internal SymbolReference CreateSymbolReference(CodeElementsParser.SymbolReference4Context context, SymbolType symbolType) { AlphanumericValue nameLiteral = CreateAlphanumericValue(context.alphanumericValue4()); var symbolReference = new SymbolReference(nameLiteral, symbolType); symbolInformationForTokens[nameLiteral.Token] = symbolReference; return symbolReference; }
internal AmbiguousSymbolReference CreateAmbiguousSymbolReference(CodeElementsParser.AmbiguousSymbolReference4Context context, SymbolType[] candidateTypes) { var nameLiteral = CreateAlphanumericValue(context.alphanumericValue4()); var ambiguousSymbolReference = new AmbiguousSymbolReference(nameLiteral, candidateTypes); symbolInformationForTokens[nameLiteral.Token] = ambiguousSymbolReference; return ambiguousSymbolReference; }
internal ExternalNameOrSymbolReference CreateExternalNameOrSymbolReference(CodeElementsParser.ExternalNameOrSymbolReference4Context context, SymbolType[] candidateTypes) { AlphanumericValue nameLiteral = CreateAlphanumericValue(context.alphanumericValue4()); var externalNameOrSymbolReference = new ExternalNameOrSymbolReference(nameLiteral, candidateTypes); symbolInformationForTokens[nameLiteral.Token] = externalNameOrSymbolReference; return externalNameOrSymbolReference; }
internal SymbolReference CreateSymbolReference(CodeElementsParser.SymbolReference12Context context, SymbolType symbolType) { AlphanumericValue nameLiteral = null; if (context.alphanumericValue4() != null) { nameLiteral = CreateAlphanumericValue(context.alphanumericValue4()); } else if(context.DATE() != null) { nameLiteral = new AlphanumericValue(ParseTreeUtils.GetFirstToken(context.DATE())); } var symbolReference = new SymbolReference(nameLiteral, symbolType); symbolInformationForTokens[nameLiteral.Token] = symbolReference; return symbolReference; }