Exemplo n.º 1
0
        /// <summary>
        /// Initialization of the AST node. Specifies conversion from parse-tree node to AST node.
        /// </summary>
        /// <param name="treeNode">Parse-tree node.</param>
        public override void Init(ParseTreeNode treeNode)
        {
            Operator  = EnumMapper.ToNumericOperator(treeNode.GetChildString(0));
            Arguments = new List <TermOrNumericAstNode>();

            var arg1 = treeNode.GetChildAst <TermOrNumericAstNode>(1);
            var arg2 = treeNode.GetChildAst <TermOrNumericAstNode>(2);

            if (arg1 != null)
            {
                Arguments.Add(arg1);
            }

            if (arg2 != null)
            {
                Arguments.Add(arg2);
            }
            else
            {
                // multi-ary operation
                var arg2List = treeNode.GetChildAstList <TermOrNumericAstNode>(2);
                if (arg2List != null)
                {
                    Arguments.AddRange(arg2List);
                }
            }


            if (Arguments.Count == 0)
            {
                Arguments = null;
            }
        }
Exemplo n.º 2
0
 /// <summary>
 /// Initialization of the AST node. Specifies conversion from parse-tree node to AST node.
 /// </summary>
 /// <param name="treeNode">Parse-tree node.</param>
 public override void Init(ParseTreeNode treeNode)
 {
     Name          = treeNode.GetChildString(1);
     Parameters    = treeNode.GetGrandChildAst <TypedListAstNode>(2, 1);
     Preconditions = treeNode.GetGrandChildAst <GdAstNode>(3, 1);
     Effects       = treeNode.GetGrandChildAst <EffectAstNode>(4, 1);
 }
Exemplo n.º 3
0
 /// <summary>
 /// Initialization of the AST node. Specifies conversion from parse-tree node to AST node.
 /// </summary>
 /// <param name="treeNode">Parse-tree node.</param>
 public override void Init(ParseTreeNode treeNode)
 {
     Name               = treeNode.GetChildString(1);
     Parameters         = treeNode.GetGrandChildAst <TypedListAstNode>(2, 1);
     DurationConstraint = treeNode.GetGrandChildAst <DurationConstraintAstNode>(3, 1);
     Condition          = treeNode.GetGrandChildAst <DaGdAstNode>(4, 1);
     Effect             = treeNode.GetGrandChildAst <DaEffectAstNode>(5, 1);
 }
Exemplo n.º 4
0
 /// <summary>
 /// Initialization of the AST node. Specifies conversion from parse-tree node to AST node.
 /// </summary>
 /// <param name="treeNode">Parse-tree node.</param>
 public override void Init(ParseTreeNode treeNode)
 {
     Name      = treeNode.GetChildString(0);
     Arguments = treeNode.GetChildAst <TypedListAstNode>(1);
 }
Exemplo n.º 5
0
 /// <summary>
 /// Initialization of the AST node. Specifies conversion from parse-tree node to AST node.
 /// </summary>
 /// <param name="treeNode">Parse-tree node.</param>
 public override void Init(ParseTreeNode treeNode)
 {
     AssignOperator = EnumMapper.ToTimedEffectAssignOperator(treeNode.GetChildString(0));
     Function       = treeNode.GetChildAst <FunctionTermAstNode>(1);
     Expression     = treeNode.GetChildAst <TimedNumericExpressionAstNode>(2);
 }
Exemplo n.º 6
0
 /// <summary>
 /// Initialization of the AST node. Specifies conversion from parse-tree node to AST node.
 /// </summary>
 /// <param name="treeNode">Parse-tree node.</param>
 public override void Init(ParseTreeNode treeNode)
 {
     TimeSpecifier = EnumMapper.ToTimeSpecifier(treeNode.GetChildString(1));
     Effect        = treeNode.GetChildAst <CondEffectAstNode>(2);
 }
Exemplo n.º 7
0
 /// <summary>
 /// Initialization of the AST node. Specifies conversion from parse-tree node to AST node.
 /// </summary>
 /// <param name="treeNode">Parse-tree node.</param>
 public override void Init(ParseTreeNode treeNode)
 {
     TimeSpecifier      = EnumMapper.ToTimeSpecifier(treeNode.GetChildString(1));
     DurationConstraint = treeNode.GetChildAst <SimpleDurationConstraintAstNode>(2);
 }
Exemplo n.º 8
0
 /// <summary>
 /// Initialization of the AST node. Specifies conversion from parse-tree node to AST node.
 /// </summary>
 /// <param name="treeNode">Parse-tree node.</param>
 public override void Init(ParseTreeNode treeNode)
 {
     DurationComparer = EnumMapper.ToDurationComparer(treeNode.GetChildString(0));
     DurationArgument = treeNode.GetChildAst <TermOrNumericAstNode>(2);
 }
Exemplo n.º 9
0
 /// <summary>
 /// Initialization of the AST node. Specifies conversion from parse-tree node to AST node.
 /// </summary>
 /// <param name="treeNode">Parse-tree node.</param>
 public override void Init(ParseTreeNode treeNode)
 {
     DomainName     = treeNode.GetChildString(2);
     DomainSections = treeNode.GetChildAstList <DomainSectionAstNode>(3);
 }
Exemplo n.º 10
0
 /// <summary>
 /// Initialization of the AST node. Specifies conversion from parse-tree node to AST node.
 /// </summary>
 /// <param name="treeNode">Parse-tree node.</param>
 public override void Init(ParseTreeNode treeNode)
 {
     Name  = treeNode.GetChildString(0);
     Terms = treeNode.GetChildAstList <TermAstNode>(1);
 }
Exemplo n.º 11
0
 /// <summary>
 /// Initialization of the AST node. Specifies conversion from parse-tree node to AST node.
 /// </summary>
 /// <param name="treeNode">Parse-tree node.</param>
 public override void Init(ParseTreeNode treeNode)
 {
     Name     = treeNode.GetChildString(1);
     Argument = treeNode.GetChildAst <GdAstNode>(2);
 }
Exemplo n.º 12
0
 /// <summary>
 /// Initialization of the AST node. Specifies conversion from parse-tree node to AST node.
 /// </summary>
 /// <param name="treeNode">Parse-tree node.</param>
 public override void Init(ParseTreeNode treeNode)
 {
     Operator  = EnumMapper.ToNumericComparer(treeNode.GetChildString(0));
     Argument1 = treeNode.GetChildAst <TermOrNumericAstNode>(1);
     Argument2 = treeNode.GetChildAst <TermOrNumericAstNode>(2);
 }
Exemplo n.º 13
0
 /// <summary>
 /// Initialization of the AST node. Specifies conversion from parse-tree node to AST node.
 /// </summary>
 /// <param name="treeNode">Parse-tree node.</param>
 public override void Init(ParseTreeNode treeNode)
 {
     AssignOperator = EnumMapper.ToAssignOperator(treeNode.GetChildString(0));
     Argument1      = treeNode.GetChildAst <FunctionTermAstNode>(1);
     Argument2      = treeNode.GetChildAst <TermOrNumericAstNode>(2);
 }
Exemplo n.º 14
0
 /// <summary>
 /// Initialization of the AST node. Specifies conversion from parse-tree node to AST node.
 /// </summary>
 /// <param name="treeNode">Parse-tree node.</param>
 public override void Init(ParseTreeNode treeNode)
 {
     IntervalSpecifier = EnumMapper.ToIntervalSpecifier(treeNode.GetChildString(1));
     Argument          = treeNode.GetChildAst <GdAstNode>(2);
 }
Exemplo n.º 15
0
 /// <summary>
 /// Initialization of the AST node. Specifies conversion from parse-tree node to AST node.
 /// </summary>
 /// <param name="treeNode">Parse-tree node.</param>
 public override void Init(ParseTreeNode treeNode)
 {
     Name = treeNode.GetChildString(0);
 }
Exemplo n.º 16
0
 /// <summary>
 /// Initialization of the AST node. Specifies conversion from parse-tree node to AST node.
 /// </summary>
 /// <param name="treeNode">Parse-tree node.</param>
 public override void Init(ParseTreeNode treeNode)
 {
     OptimizationSpecifier = EnumMapper.ToOptimizationSpecifier(treeNode.GetChildString(1));
     MetricExpression      = treeNode.GetChildAst <TermOrNumericAstNode>(2);
 }