Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Child{
- public Child(Parent parent){Parent=parent;}
- public Parent Parent {get; private set;}
- }
- class Parent{
- // singleton child
- public Child Child {get;set;}
- //children
- private List<Child> _children=new List<Child>();
- public List<Child> Children { get {return _children;}}
- }
- var child = new Child(parent);
- parent.Children.Add(child);
- var child = new Child(parent1);
- parent2.Children.Add(child);
- class Child{
- public Child(Parent parent){Parent=parent;}
- public Parent Parent {get; private set;}
- }
- class Parent{
- // singleton child
- private Child _child;
- public Child Child {get{return _child;}
- set{
- if (value.Parent != this) throw new Exception();
- _child=value;}}
- //children
- private List<Child> _children=new List<Child>();
- public ReadOnlyCollection<Child> Children { get {return _children;}}
- public void AddChild(Child child){
- if (child.Parent != this) throw new Exception();
- _children.Add(child);
- }
- class Child{
- public Parent Parent {get; internal set;}
- }
- class Parent{
- // singleton child
- private Child _child;
- public Child Child {get{return _child;}
- set{
- value.Parent=this;
- _child = value;
- }}
- //children
- private List<Child> _children=new List<Child>();
- public ReadOnlyCollection<Child> Children { get {return _children;}}
- public void AddChild(Child child){
- child.Parent=this;
- _children.Add(child);
- }
- }
- class Child{
- internal Child(Parent parent, init-params){Parent=parent;}
- public Parent Parent {get; private set;}
- }
- class Parent{
- // singleton child
- public Child Child {get; private set;}
- public void CreateChild(init-params) {
- var child = new Child(this, init-params);
- Child = value;
- }
- //children
- private List<Child> _children=new List<Child>();
- public ReadOnlyCollection<Child> Children { get {return _children;}}
- public Child AddChild(init-params){
- var child = new Child(this, init-params);
- _children.Add(child);
- return child;
- }
- }
- new Child(){prop=value}
- var c = parent.AddChild();
- c.prop=value;
- //singleton
- class Child{
- public Child(ParentWithChild parent){
- Parent=parent;
- Parent.Child=this;
- }
- public ParentWithChild Parent {get; private set;}
- }
- class ParentWithChild{
- public Child Child {get;internal set;}
- }
- //children
- class Child{
- public Child(ParentWithChildren parent){
- Parent=parent;
- Parent._children.Add(this);
- }
- public ParentWithChildren Parent {get; private set;}
- }
- class ParentWithChildren{
- internal List<Child> _children=new List<Child>();
- public ReadOnlyCollection<Child> Children { get {return _children;}}
- }
- var parent = new ParentWithChildren();
- new Child(parent); //adds child to parent
- new Child(parent);
- new Child(parent);
- var parent = new ParentWithChild();
- new Child(parent); // sets parent.Child
- class Child{
- public Child(Parent parent){
- Parent=parent;
- Parent._children.Add(this);
- }
- public Parent Parent {get; private set;}
- }
- class Parent{
- //children
- internal List<Child> _children=new List<Child>();
- public ReadOnlyCollection<Child> Children { get {return _children;}}
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement