Пример #1
0
        public static NonTerminalNode CreateNode(Rule rule)
        {
            Debug.Assert(rule != null);

            NonTerminalNode node = _implTypes.ContainsKey(rule.Index) ? _implTypes.CreateInstance(rule.Index) : new NonTerminalNode();

            node.Rule = rule;
            return(node);
        }
Пример #2
0
        public static NonTerminalNode CreateNode(Rule rule)
        {
            Debug.Assert(rule != null);

            NonTerminalNode node = null;

            if (_nodeImplTypeMap.ContainsKey(rule.Index))
            {
                node = _nodeImplTypeMap.CreateInstance(rule.Index);
            }
            else
            {
                node = new NonTerminalNode();// if no type is bound to the rule then just create a base non-terminal node
            }
            node.Rule = rule;
            return(node);
        }