public Production_Rule_Sequence(Production_Rule _production_rule, Production_Rule_Sequence _self_production_rule_sequence = null)
        {
            // set values
            production_rule = _production_rule;

            // add to dictionary
            Add(production_rule);
            Add(self_production_rule_sequence);

            // set properties
            UpdateProperties("Production-Rule-Sequence", RecursiveProperty.Right);
        }
        public Production_Rule_Sequence(Whitespace_Sequence _opt_whitespace_sequence_1, Production_Rule _production_rule, Production_Rule_Sequence _self_production_rule_sequence = null)
        {
            // set values
            opt_whitespace_sequence_1     = _opt_whitespace_sequence_1;
            production_rule               = _production_rule;
            self_production_rule_sequence = _self_production_rule_sequence;

            // add to dictionary
            Add(opt_whitespace_sequence_1);
            Add(production_rule);
            Add(self_production_rule_sequence);

            // set properties
            UpdateProperties("Production-Rule-Sequence", RecursiveProperty.Right);
        }
Esempio n. 3
0
        private Production_Rule_Sequence Parse_Production_Rule_Sequence(Production_Rule_Sequence _self = null)
        {
            var _backtrack = _scanResult.CurrentReadIndex;

            var _production_rule_sequence_1 = Parse_Production_Rule_Sequence_1(_self);

            if (_production_rule_sequence_1 != null)
            {
                _self = Parse_Production_Rule_Sequence(_production_rule_sequence_1);
            }

            //var _production_rule_sequence_2 = Parse_Production_Rule_Sequence_2(_self);
            //if (_production_rule_sequence_2 != null) { _self = Parse_Production_Rule_Sequence(_production_rule_sequence_2); }

            UpdateBacktrackIndex(_self, _backtrack);

            return(_self);
        }
Esempio n. 4
0
        private Production_Rule_Sequence Parse_Production_Rule_Sequence_2(Production_Rule_Sequence _self = null)
        {
            var _backtrack = _scanResult.CurrentReadIndex;

            var production_rule           = Parse_Production_Rule();
            var opt_whitespace_sequence_1 = Parse_Whitespace_Sequence();


            if (production_rule != null)
            {
                _self = new Production_Rule_Sequence(production_rule, _self);
            }
            else
            {
                _self = null;
            }

            UpdateBacktrackIndex(_self, _backtrack);

            return(_self);
        }