Exemple #1
0
 internal ParseIdentifier(Operation_IDs oID, string strID, int nPos, ParseIdentifier prev)
 {
     this.operationID    = oID;
     this.identifier     = strID;
     this.position       = nPos;
     this.prevIdentifier = prev;
 }
Exemple #2
0
        private static void OutputID(ParsingContext context, Operation_IDs oID, string strID, int nPos)
        {
            if (context.OutputIdentifiers)
            {
                ParseIdentifier pi = new ParseIdentifier(oID, strID, nPos, context.CurrentIdentifier);

                if (context.CurrentIdentifier == null)
                {
                    if (context.ParentIdentifier == null)
                    {
                        context.Identifiers = pi;
                    }
                    else
                    {
                        context.ParentIdentifier.SubIdentifier = pi;
                    }
                }
                else
                {
                    context.CurrentIdentifier.NextIdentifier = pi;
                }

                pi.ParentIdentifier       = context.ParentIdentifier;
                context.CurrentIdentifier = pi;
            }
        }
Exemple #3
0
        private void WriteIdentifierInfoRecursively(StringWriter writer, int indent = 0)
        {
            ParseIdentifier identifier = this;

            while (identifier != null)
            {
                identifier.WriteIdentifierInfo(writer);

                indent++;

                if (identifier.SubIdentifier != null)
                {
                    identifier.SubIdentifier.WriteIdentifierInfoRecursively(writer, indent);
                }

                indent--;

                identifier = identifier.NextIdentifier;
            }
        }
Exemple #4
0
 internal ParseResult(ExpTreeNode tree, ParseIdentifier identifiers)
 {
     this.tree        = tree;
     this.identifiers = identifiers;
 }