code: def field_or_value(clause):
      
      if hasattr(clause, "getName") and clause.getName() != "field":
          if clause.getName() == "set_function":
              return SetFunction.from_clause(clause)
          else:
              return Value(resolve(clause))
      else:
          return Field(clause)
docs: For a clause that could be a field or value,
      create the right one and return it