/// <summary> /// Creates a new <see cref="InlinedLiteralStringTokenItem"/> with the /// <paramref name="source"/>, and <paramref name="parent"/> provided. /// </summary> /// <param name="source">The <see cref="ILiteralStringTokenItem"/> from which /// the <see cref="InlinedLiteralStringTokenItem"/> is derived.</param> /// <param name="sourceRoot">The <see cref="IOilexerGrammarTokenEntry"/> which contains /// the <paramref name="source"/>.</param> /// <param name="root">The <see cref="InlinedTokenEntry"/> which roots the entire /// token structure.</param> public InlinedLiteralStringTokenItem(ILiteralStringTokenItem source, IOilexerGrammarTokenEntry sourceRoot, InlinedTokenEntry root) : base(source.Value, source.CaseInsensitive, source.Column, source.Line, source.Position, source.SiblingAmbiguity) { this.SourceRoot = sourceRoot; this.Source = source; this.Root = root; this.SiblingAmbiguity = source.SiblingAmbiguity; this.RepeatOptions = source.RepeatOptions; this.Name = source.Name; }
public InlinedCharRangeTokenItem(ICharRangeTokenItem source, IOilexerGrammarTokenEntry sourceRoot, InlinedTokenEntry root) : base(source.Inverted, source.Range, source.Line, source.Column, source.Position) { this.Source = source; this.SourceRoot = sourceRoot; this.Root = root; this.RepeatOptions = source.RepeatOptions; this.Name = source.Name; this.SiblingAmbiguity = source.SiblingAmbiguity; }
public InlinedScanCommandTokenItem(IScanCommandTokenItem source, IOilexerGrammarTokenEntry sourceRoot, InlinedTokenEntry root, IDictionary <ITokenItem, ITokenItem> oldNewLookup) : base(OilexerGrammarInliningCore.Inline(source.SearchTarget, sourceRoot, root, oldNewLookup), source.SeekPast, source.Column, source.Line, source.Position) { this.Source = source; this.SourceRoot = sourceRoot; this.Root = root; this.RepeatOptions = source.RepeatOptions; this.SiblingAmbiguity = source.SiblingAmbiguity; this.Name = source.Name; }
/// <summary> /// Creates a new <see cref="InlinedTokenExpressionSeries"/> with the /// <paramref name="source"/>, <paramref name="sourceRoot"/> and /// <paramref name="root"/> /// </summary> /// <param name="source">The <see cref="TokenExpressionSeries"/> from which the current /// <see cref="InlinedTokenExpressionSeries"/> derives.</param> /// <param name="sourceRoot">The <see cref="IOilexerGrammarTokenEntry"/> which contains the /// <paramref name="source"/>.</param> /// <param name="root">The <see cref="InlinedTokenEntry"/> which contains the <see cref="InlinedTokenExpressionSeries"/>.</param> public InlinedTokenExpressionSeries(ITokenExpressionSeries source, IOilexerGrammarTokenEntry sourceRoot, InlinedTokenEntry root, IDictionary <ITokenItem, ITokenItem> oldNewLookup) : base(OilexerGrammarInliningCore.Inline(source.ToArray(), sourceRoot, root, oldNewLookup), source.Line, source.Column, source.Position, source.FileName) { this.Source = source; this.SourceRoot = SourceRoot; this.Root = root; }
/// <summary> /// Creates a new <see cref="InlinedTokenExpression"/> from /// the <paramref name="source"/> provided. /// </summary> /// <param name="source">The <see cref="TokenExpression"/> from which the /// <see cref="InlinedTokenExpression"/> is derived.</param> public InlinedTokenExpression(ITokenExpression source, IOilexerGrammarTokenEntry sourceRoot, InlinedTokenEntry root, IDictionary <ITokenItem, ITokenItem> oldNewLookup) : base(OilexerGrammarInliningCore.Inline((IControlledCollection <ITokenItem>)source, sourceRoot, root, oldNewLookup), source.FileName, source.Column, source.Line, source.Position) { this.Source = source; }
public InlinedLiteralStringReferenceTokenItem(ILiteralStringReferenceTokenItem source, IOilexerGrammarTokenEntry sourceRoot, InlinedTokenEntry root) : base(source.Literal.Value, source.Literal.CaseInsensitive, source.Column, source.Line, source.Position, source.Literal.SiblingAmbiguity) { this.Source = source; this.SourceRoot = sourceRoot; this.Root = root; this.RepeatOptions = source.RepeatOptions; if (!string.IsNullOrEmpty(source.Name)) { this.Name = source.Name; } else { this.Name = source.Literal.Name; } this.SiblingAmbiguity = source.SiblingAmbiguity; }
public InlinedTokenGroupItem(ITokenGroupItem source, IOilexerGrammarTokenEntry sourceRoot, InlinedTokenEntry root, IDictionary <ITokenItem, ITokenItem> oldNewLookup) : base(source.FileName, OilexerGrammarInliningCore.Inline(source.ToArray(), sourceRoot, root, oldNewLookup), source.Column, source.Line, source.Position) { this.Source = source; this.SourceRoot = sourceRoot; this.Root = root; this.RepeatOptions = source.RepeatOptions; this.Name = source.Name; this.SiblingAmbiguity = source.SiblingAmbiguity; }
public InlinedBaseEncodeGraphCommand(IBaseEncodeGraphCommand source, OilexerGrammarTokens.StringLiteralToken stringBase, IOilexerGrammarTokenEntry sourceRoot, InlinedTokenEntry root, IDictionary <ITokenItem, ITokenItem> oldNewLookup) : base(OilexerGrammarInliningCore.Inline(source.EncodeTarget, sourceRoot, root, oldNewLookup), stringBase, source.Digits, source.Column, source.Line, source.Position) { this.Source = source; this.SourceRoot = sourceRoot; this.Root = root; this.RepeatOptions = source.RepeatOptions; this.Name = source.Name; this.SiblingAmbiguity = source.SiblingAmbiguity; }