示例#1
0
		public LogicList (XmlNode node, CreateLogicVessel vessel):base (node) {
			this.Nodes = new List <LogicNode> ();

			//create the child nodes
			for (int i = 0; i < node.ChildNodes.Count; i++) {
				LogicNode childLogic = vessel.CreateLogic (node.ChildNodes [i]);
				childLogic.Parent = this;
				this.Nodes.Add (childLogic);
				
				if (i > 0) {
					this.Nodes [i].Prev = this.Nodes [i - 1];
					this.Nodes [i - 1].Next = this.Nodes [i];
				}
			}
		}
示例#2
0
 public LogicCondition(XmlNode node, CreateLogicVessel vessel, Dictionary <string, ExpressionConstructorInfo> expressionConstructorInfos) : base(node)
 {
     this.Condition      = new Expression(node.ChildNodes [0], expressionConstructorInfos);
     this.TrueLogicList  = (LogicList)vessel.CreateLogic(node.ChildNodes [1].ChildNodes [0]);
     this.FalseLogicList = (LogicList)vessel.CreateLogic(node.ChildNodes [2].ChildNodes [0]);
 }
示例#3
0
 public LogicOption(XmlNode node, CreateLogicVessel vessel) : base(node, vessel)
 {
     this.Text = node.Attributes ["text"].Value;
 }
示例#4
0
 public LogicLoop(XmlNode node, CreateLogicVessel vessel) : base(node, vessel)
 {
     this.Repeat = int.Parse(node.Attributes ["repeat"].Value);
 }