private String toOptionalVariableExpression(Field field, TypeReference typeReference, VariableLiteral variableLiteral, List<Argument> parserArguments, List<Argument> serializerArguments, boolean suppressPointerAccess, Tracer tracer) {
        tracer = tracer.dive("optional fields");
        return tracer + (suppressPointerAccess || (typeReference != null && typeReference.isComplexTypeReference()) ? "" : "*") + camelCaseToSnakeCase(variableLiteral.getName()) +
            variableLiteral.getChild().map(child -> "." + camelCaseToSnakeCase(toVariableExpression(field, typeReference, child, parserArguments, serializerArguments, false, suppressPointerAccess, true))).orElse("");
    }
Returns an expression that accesses the given optional field in Python.
@param field the field of the given type reference
@param typeReference the type reference of the given data
@param variableLiteral the variable literal to access
@param parserArguments the parser arguments
@param serializerArguments the serializer arguments
@param suppressPointerAccess whether to suppress pointer access
@param tracer the tracer for this expression
@return an expression that accesses the given optional field in Python
code-generation/language-python/src/main/java/org/apache/plc4x/language/python/PythonLanguageTemplateHelper.java