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)
 {
     Arguments = treeNode.GetChildAstList <CEffectAstNode>(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)
 {
     Arguments = treeNode.GetChildAstList <SimpleDurationConstraintAstNode>(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)
 {
     DomainName     = treeNode.GetChildString(2);
     DomainSections = treeNode.GetChildAstList <DomainSectionAstNode>(3);
 }
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)
 {
     PredicatesList = treeNode.GetChildAstList <PredicateSkeletonAstNode>(1);
 }
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)
 {
     Name  = treeNode.GetChildString(0);
     Terms = treeNode.GetChildAstList <TermAstNode>(1);
 }
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)
 {
     ProblemName             = treeNode.GetGrandChildString(1, 1);
     CorrespondingDomainName = treeNode.GetGrandChildString(2, 1);
     ProblemSections         = treeNode.GetChildAstList <ProblemSectionAstNode>(3);
 }
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)
 {
     InitElemList = treeNode.GetChildAstList <InitElemAstNode>(1);
 }