private CharactersInCollatingSequence CreateCharactersInCollatingSequence(CodeElementsParser.CharactersInCollatingSequenceContext context) { var chars = new CharactersInCollatingSequence(); if (context.alphanumericValue1() != null) { chars.CharactersInAlphanmericValue = CobolWordsBuilder.CreateAlphanumericValue(context.alphanumericValue1()); } else if (context.ordinalPositionInCollatingSequence() != null) { chars.OrdinalPositionInCollatingSequence = CobolWordsBuilder.CreateIntegerValue(context.ordinalPositionInCollatingSequence().integerValue()); } return chars; }
// --- Cobol symbol definitions and symbol references --- internal SymbolDefinition CreateSymbolDefinition(CodeElementsParser.SymbolDefinition1Context context, SymbolType symbolType) { AlphanumericValue nameLiteral = CreateAlphanumericValue(context.alphanumericValue1()); var symbolDefinition = new SymbolDefinition(nameLiteral, symbolType); symbolInformationForTokens[nameLiteral.Token] = symbolDefinition; return symbolDefinition; }
internal SymbolReference CreateSymbolReference(CodeElementsParser.SymbolReference1Context context, SymbolType symbolType) { AlphanumericValue nameLiteral = CreateAlphanumericValue(context.alphanumericValue1()); var symbolReference = new SymbolReference(nameLiteral, symbolType); symbolInformationForTokens[nameLiteral.Token] = symbolReference; return symbolReference; }
internal AmbiguousSymbolReference CreateAmbiguousSymbolReference(CodeElementsParser.AmbiguousSymbolReference1Context context, SymbolType[] candidateTypes) { AlphanumericValue nameLiteral = CreateAlphanumericValue(context.alphanumericValue1()); var ambiguousSymbolReference = new AmbiguousSymbolReference(nameLiteral, candidateTypes); symbolInformationForTokens[nameLiteral.Token] = ambiguousSymbolReference; return ambiguousSymbolReference; }