예제 #1
0
 public TildeATHExpression(
     SkipWhitespaceToken a,
     RoundOpenToken b,
     SkipWhitespaceToken c,
     MaybeNotToken not,
     MaybeColouredNameToken target,
     SkipWhitespaceToken d,
     RoundCloseToken e,
     SkipWhitespaceToken f,
     CurlyOpenToken g,
     SkipWhitespaceToken h,
     CurlyCloseDelimitedExpressionListToken loopExpressions,
     SkipWhitespaceToken i,
     EXECUTEToken j,
     SkipWhitespaceToken k,
     RoundOpenToken l,
     SkipWhitespaceToken m,
     ExpressionOrCommandToken executeExpressionOrCommand,
     SkipWhitespaceToken n,
     RoundCloseToken o,
     SkipWhitespaceToken p,
     SemicolonToken q)
 {
     Not               = not.Not;
     Target            = target.Name;
     TargetColour      = target.Colour;
     _loopExpressions  = loopExpressions.Expressions;
     ExecuteExpression = executeExpressionOrCommand.Expression;
     ExecuteCommand    = executeExpressionOrCommand.Command;
 }
예제 #2
0
        public THISListDIEExpression(
            SkipWhitespaceToken a,
            ColourToken target1Colour,
            NameToken target1,
            SkipWhitespaceToken b,
            CommaToken c,
            SkipWhitespaceToken d,
            ColourToken target2Colour,
            NameToken target2,
            SkipWhitespaceToken e,
            SquareCloseToken f,
            SkipWhitespaceToken g,
            DotToken h,
            SkipWhitespaceToken i,
            DIEToken j,
            SkipWhitespaceToken k,
            RoundOpenToken l,
            SkipWhitespaceToken m,
            RoundCloseToken n,
            SkipWhitespaceToken o,
            SemicolonToken p)
        {
            Target1       = target1.Name;
            Target1Colour = target1Colour.Colour;

            Target2       = target2.Name;
            Target2Colour = target2Colour.Colour;
        }
예제 #3
0
 public ImportExpression(
     SkipWhitespaceToken a,
     MaybeColouredNameToken type,
     SkipWhitespaceToken b,
     MaybeColouredNameToken name,
     SkipWhitespaceToken c,
     SemicolonToken d)
 {
     Type       = type.Name;
     TypeColour = type.Colour;
     Name       = name.Name;
     NameColour = name.Colour;
 }
예제 #4
0
 public DIEExpression(
     MaybeColouredNameToken target,
     SkipWhitespaceToken a,
     DotToken b,
     SkipWhitespaceToken c,
     DIEToken d,
     SkipWhitespaceToken e,
     RoundOpenToken f,
     SkipWhitespaceToken g,
     RoundCloseToken h,
     SkipWhitespaceToken i,
     SemicolonToken j)
 {
     Target       = target.Name;
     TargetColour = target.Colour;
 }
예제 #5
0
        public BifurcateExpression(
            SkipWhitespaceToken a,
            NameToken target,
            SkipWhitespaceToken b,
            SquareOpenToken c,
            SkipWhitespaceToken d,
            ColourToken splitColour1,
            NameToken splitTarget1,
            SkipWhitespaceToken e,
            CommaToken f,
            SkipWhitespaceToken g,
            ColourToken splitColour2,
            NameToken splitTarget2,
            SkipWhitespaceToken h,
            SquareCloseToken i,
            SkipWhitespaceToken j,
            SemicolonToken k,
            SkipWhitespaceToken l,
            ColouredExpressionsEndingWithTHISListDIEToken colouredLines)
        {
            Target = target.Name;

            if (splitTarget1.Name != Target || splitTarget2.Name != Target)
            {
                throw new _ATHParserException("Split target name mismatch.");
            }

            _colours    = new Colour[2];
            _colours[0] = splitColour1.Colour;
            _colours[1] = splitColour2.Colour;

            List <string>[] lines = new List <string> [_colours.Length];
            for (int ili = 0; ili < lines.Length; ili++)
            {
                lines[ili] = new List <string>();
            }

            ColouredExpressions = colouredLines.ColouredExpressions;
        }
예제 #6
0
 public ExpressionBlockExpression(
     SkipWhitespaceToken a,
     CurlyCloseDelimitedExpressionListToken expressions)
 {
     _expressions = expressions.Expressions;
 }