public Type evaluate()

in src/main/java/org/apache/sling/scripting/sightly/java/compiler/impl/TypeInference.java [138:151]


    public Type evaluate(RuntimeCall runtimeCall) {
        inferAll(runtimeCall.getArguments());
        if (runtimeCall.getFunctionName().equals(RuntimeCall.USE)) {
            ExpressionNode identifier = runtimeCall.getArguments().get(0);
            if (identifier instanceof StringConstant) {
                String objectType = ((StringConstant) identifier).getText();
                if (FQCN_PATTERN.matcher(objectType).matches() && importsAnalyzer != null && importsAnalyzer.allowImport(objectType)) {
                    imports.add(objectType);
                    return Type.dynamic(objectType);
                }
            }
        }
        return Type.UNKNOWN;
    }