Website Summary Files Commits Branches @commit @diff @stats
path: root / homework / 81498 / Project / Wizard / Misc / OperatorsToTokensMap.cs
blob: 2468fec493c0c2ae549ff1bd42baf6900cbad63d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Wizard.Misc
{
    public static class OperatorsToTokens
    {
        public static Dictionary<string, TokenType> AsMap()
        {
            return new Dictionary<string, TokenType>()
            {
                {"!" ,TokenType.Bang},
                {"=" ,TokenType.Equal},
                {"|" ,TokenType.BitwiseOr},
                {"&" ,TokenType.BitwiseAnd},
                {">" ,TokenType.Greater},
                {"<" ,TokenType.Less},
                {"+" ,TokenType.Plus},
                {"-" ,TokenType.Minus},
                {"*" ,TokenType.Star},
                {"/" ,TokenType.Division},
                {"%" ,TokenType.Modulo},

                {"!=" ,TokenType.BangEqual},
                {"/=" ,TokenType.DivideEqual},
                {"!!" ,TokenType.DoubleBang},
                {"**" ,TokenType.DoubleStar},
                {"==" ,TokenType.EqualEqual},
                {">=" ,TokenType.GreaterEqual},
                {"+=" ,TokenType.PlusEqual},
                {"++" ,TokenType.PlusPlus},
                {"&&" ,TokenType.LogicalAnd},
                {"||" ,TokenType.LogicalOr},
                {"<=" ,TokenType.LessEqual},
                {"*=" ,TokenType.StarEqual},
                {"-=" ,TokenType.MinusEqual},
                {"--" ,TokenType.MinusMinus},
                {"%=" ,TokenType.ModuloEqual},

                {"===" ,TokenType.StrictEqual},
                {"!==" ,TokenType.StrictNotEqual},
                {"**=" ,TokenType.DoubleStarEqual},
            };
        }

        public static List<TokenType> AsTokenList()
        {
            return AsMap().Values.ToList();
        }
    }
}