class ExpressionFunctionUtils {

    static MethodDeclaration getFieldRefExpressionMethodDeclaration(final String methodName,
                                                                    final FieldRef fieldRef,
                                                                    final ClassOrInterfaceType returnedType,
                                                                    final LinkedHashMap<String, ClassOrInterfaceType> parameterNameTypeMap) {
        String variableName = "fieldRefVariable";
        final BlockStmt body;
        if (parameterNameTypeMap.size() == 1) {
            body = getFieldRefExpressionFromCommonDataBlockStmt(variableName, fieldRef, returnedType,
                                                                parameterNameTypeMap);
        } else {
            body = getFieldRefExpressionFromDefineFunctionBlockStmt(variableName, fieldRef, returnedType,
                                                                    parameterNameTypeMap);
        }
        return getExpressionMethodDeclaration(methodName, variableName, body, returnedType, parameterNameTypeMap);
    }

    private  ExpressionFunctionUtils();

}