Beispiel #1
0
 public TokenTransition(AssemblyTerminalCases assemblyTerminals, CommonSymbolCases commonSymbols, TypeIdParserTokens captures)
     : this()
 {
     this.assemblyTerminals = assemblyTerminals;
     this.commonSymbols     = commonSymbols;
     this.captures          = captures;
 }
Beispiel #2
0
        public static TokenTransition ExclusiveOr(TokenTransition left, TokenTransition right)
        {
            AssemblyTerminalCases assemblyTerminals = ~((left.assemblyTerminals & right.assemblyTerminals));
            CommonSymbolCases     commonSymbols     = ~((left.commonSymbols & right.commonSymbols));
            TypeIdParserTokens    captures          = ~((left.captures & right.captures));

            // Because some goofball relied on CodeDOM early on, no BitwiseExOr operator is available.
            return(new TokenTransition((assemblyTerminals & (left.assemblyTerminals | right.assemblyTerminals)), (commonSymbols & (left.commonSymbols | right.commonSymbols)), (captures & (left.captures | right.captures))));
        }
Beispiel #3
0
 public void AddCapture(string capture, TypeIdParserTokens captureSet)
 {
     this.Add(new CaptureEntry(captureSet, capture));
 }
Beispiel #4
0
 public TokenTransition(TypeIdParserTokens captures)
     : this(AssemblyTerminalCases.None, CommonSymbolCases.None, captures)
 {
 }
Beispiel #5
0
 public CaptureEntry(TypeIdParserTokens tokenId, string capture)
     : base(((int)(tokenId)))
 {
     this.capture = capture;
 }