docs: def expression(value):
          """Create an SPL expression.
  
          Args:
              value: Expression as a string or another `Expression`. If value is an instance of `Expression` then a new instance is returned containing the same type and value.
  
          Returns:
              Expression: SPL expression from `value`.
          """
          if isinstance(value, Expression):
              # Clone the expression to allow it to
              # be used in multiple contexts
              return Expression(value._type, value._value)
          if hasattr(value, 'spl_json'):
              sj = value.spl_json()
              return Expression(sj['type'], sj['value'])
          return Expression('splexpr', value)