Esempio n. 1
0
 public ForStatement(Token relatedToken)
     : base(relatedToken)
 {
     _blockStatement = new BlockStatement(relatedToken);
     _init = new NodeCollection<ExpressionNode>();
     _inc = new NodeCollection<ExpressionNode>();
 }
Esempio n. 2
0
        public IntegralPrimitive(Token relatedToken)
            : base(relatedToken)
        {
            Int64 value;

            Int64.TryParse(relatedToken.Data, out value);

            if (value >= Int32.MinValue && value <= Int32.MaxValue)
            {
                _value = (Int32)value;
            }
            else
            {
                _value = value;
            }
        }
Esempio n. 3
0
 public StringPrimitive(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 4
0
 public BreakStatement(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 5
0
 public PrimaryExpression(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 6
0
        private Token LexKeyOrIdent()
        {
            Location startLocation = new Location(_src.LineIndex, _src.CharacterIndex - 1);
            bool exit = false;
            _html.Length = 0;
            _html.Append(_curChar);
            _curChar = _src.Read();

            while (!_src.EndOfStream && !exit)
            {
                switch (_curChar)
                {
                    case 'a':
                    case 'b':
                    case 'c':
                    case 'd':
                    case 'e':
                    case 'f':
                    case 'g':
                    case 'h':
                    case 'i':
                    case 'j':
                    case 'k':
                    case 'l':
                    case 'm':
                    case 'n':
                    case 'o':
                    case 'p':
                    case 'q':
                    case 'r':
                    case 's':
                    case 't':
                    case 'u':
                    case 'v':
                    case 'w':
                    case 'x':
                    case 'y':
                    case 'z':
                    case 'A':
                    case 'B':
                    case 'C':
                    case 'D':
                    case 'E':
                    case 'F':
                    case 'G':
                    case 'H':
                    case 'I':
                    case 'J':
                    case 'K':
                    case 'L':
                    case 'M':
                    case 'N':
                    case 'O':
                    case 'P':
                    case 'Q':
                    case 'R':
                    case 'S':
                    case 'T':
                    case 'U':
                    case 'V':
                    case 'W':
                    case 'X':
                    case 'Y':
                    case 'Z':
                    case '_':
                    case '0':
                    case '1':
                    case '2':
                    case '3':
                    case '4':
                    case '5':
                    case '6':
                    case '7':
                    case '8':
                    case '9':
                        {
                            _html.Append(_curChar);
                            _curChar = _src.Read();
                            break;
                        }
                    default:
                        {
                            exit = true;
                            break;
                        }
                }
            }

            string ident = _html.ToString();
            _html.Length = 0;
            TokenId tokenId;

            Location endLocation = new Location(_src.LineIndex, _src.CharacterIndex - 1);

            if (!Keys.TryGetValue(ident, out tokenId))
            {
                tokenId = TokenId.Ident;
            }

            Token token = new Token(tokenId, ident, startLocation, endLocation);

            return token;
        }
Esempio n. 7
0
 public ExpressionNode(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 8
0
 public EchoStatement(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 9
0
 public UnaryExpression(TokenId op, Token relatedToken)
     : base(relatedToken)
 {
     _op = op;
 }
Esempio n. 10
0
 public LiteralNode(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 11
0
 public BlockStatement(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 12
0
 public ForeachStatement(Token relatedToken)
     : base(relatedToken)
 {
     _blockStatement = new BlockStatement(relatedToken);
 }
Esempio n. 13
0
 public BaseNode(Token relatedToken)
 {
     _relatedToken = relatedToken;
 }
Esempio n. 14
0
 public NullPrimitive(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 15
0
 public ArgumentNode(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 16
0
 public ContinueStatement(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 17
0
 private void Advance()
 {
     if (_index < _tokens.Count)
     {
         _curtok = _tokens[_index++];
     }
     else
     {
         _curtok = _eof;
     }
 }
Esempio n. 18
0
 public IdentifierExpression(Token relatedToken)
     : base(relatedToken)
 {
     _name = relatedToken.Data;
 }
Esempio n. 19
0
 public UnaryExpression(TokenId op, ExpressionNode child, Token relatedToken)
     : base(relatedToken)
 {
     _op = op;
     _child = child;
 }
 public DictionaryCreationExpression(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 21
0
 public ParenthesizedExpression(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 22
0
 public HtmlStatement(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 23
0
 public IfStatement(Token relatedToken)
     : base(relatedToken)
 {
     _statements = new BlockStatement(relatedToken);
 }
Esempio n. 24
0
 public ArrayCreationExpression(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 25
0
 public DoublePrimitive(Token relatedToken)
     : base(relatedToken)
 {
     double.TryParse(relatedToken.Data, out _value);
 }
Esempio n. 26
0
 public QuotePrimitive(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 27
0
 public ElementAccessExpression(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 28
0
 public StatementNode(Token relatedToken)
     : base(relatedToken)
 {
 }
Esempio n. 29
0
 public BooleanPrimitive(bool value, Token relatedToken)
     : base(relatedToken)
 {
     _value = value;
 }
Esempio n. 30
0
 public NameExpressionNode(ExpressionNode expression, Token relatedToken)
     : base(relatedToken)
 {
     _name = relatedToken.Data;
     _expression = expression;
 }