in smithy-model/src/main/java/software/amazon/smithy/model/loader/IdlNodeParser.java [39:71]
static Node parseNode(IdlModelParser parser) {
char c = parser.peek();
switch (c) {
case '{':
return parseObjectNode(parser, "object node");
case '[':
return parseArrayNode(parser);
case '"': {
if (peekTextBlock(parser)) {
return parseTextBlock(parser);
} else {
SourceLocation location = parser.currentLocation();
return new StringNode(IdlTextParser.parseQuotedString(parser), location);
}
}
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
case '-':
return parser.parseNumberNode();
default: {
SourceLocation location = parser.currentLocation();
return parseNodeTextWithKeywords(parser, location, ParserUtils.parseShapeId(parser));
}
}
}