code: def array(head, *tail) -> Expression:
      """
      Creates an array of literals.
  
      Example:
      ::
  
          >>> tab.select(array(1, 2, 3))
      """
      gateway = get_gateway()
      tail = to_jarray(
          gateway.jvm.Object, [_get_java_expression(t) for t in tail]
      )
      return _binary_op("array", head, tail)
  
imports: from typing import Union
  from pyflink import add_version_doc
  from pyflink.java_gateway import get_gateway
  from pyflink.table.expression import Expression, _get_java_expression, TimePointUnit, JsonOnNull
  from pyflink.table.types import _to_java_data_type, DataType
  from pyflink.table.udf import UserDefinedFunctionWrapper
  from pyflink.util.java_utils import to_jarray, load_java_class
label_desc: Use image node_id 30 for calling a global function with example usage: array(head) and returns: _binary_op