in codegen/smithy-go-codegen/src/main/java/software/amazon/smithy/go/codegen/GoJmespathExpressionGenerator.java [84:112]
private Variable visit(JmespathExpression expr, Variable current) {
if (expr instanceof FunctionExpression tExpr) {
return visitFunction(tExpr, current);
} else if (expr instanceof FieldExpression tExpr) {
return visitField(tExpr, current);
} else if (expr instanceof Subexpression tExpr) {
return visitSub(tExpr, current);
} else if (expr instanceof ProjectionExpression tExpr) {
return visitProjection(tExpr, current);
} else if (expr instanceof FlattenExpression tExpr) {
return visitFlatten(tExpr, current);
} else if (expr instanceof ComparatorExpression tExpr) {
return visitComparator(tExpr, current);
} else if (expr instanceof LiteralExpression tExpr) {
return visitLiteral(tExpr);
} else if (expr instanceof AndExpression tExpr) {
return visitAnd(tExpr, current);
} else if (expr instanceof NotExpression tExpr) {
return visitNot(tExpr, current);
} else if (expr instanceof FilterProjectionExpression tExpr) {
return visitFilterProjection(tExpr, current);
} else if (expr instanceof MultiSelectListExpression tExpr) {
return visitMultiSelectList(tExpr, current);
} else if (expr instanceof CurrentExpression) {
return current;
} else {
throw new CodegenException("unhandled jmespath expression " + expr.getClass().getSimpleName());
}
}