parameters: (node_factory_function: Callable)
return_statement: return wrapper
docstring: Convert the first two input values to Constant Nodes if numeric values are detected.
docstring_summary: Convert the first two input values to Constant Nodes if numeric values are detected.
docstring_tokens: Convert the first two input values to Constant Nodes if numeric values are detected .
function: def binary_op(node_factory_function: Callable) -> Callable:
      """Convert the first two input values to Constant Nodes if numeric values are detected."""
  
      @wraps(node_factory_function)
      def wrapper(left: NodeInput, right: NodeInput, *args: Any, **kwargs: Any) -> Node:
          left, right = as_nodes(left, right)
          node = node_factory_function(left, right, *args, **kwargs)
          node = _set_node_friendly_name(node, **kwargs)
          return node
  
      return wrapper
function_tokens: def binary_op ( node_factory_function : Callable ) -> Callable : @ wraps ( node_factory_function ) def wrapper ( left : NodeInput , right : NodeInput , * args : Any , * * kwargs : Any ) -> Node : left , right = as_nodes ( left , right ) node = node_factory_function ( left , right , * args , * * kwargs ) node = _set_node_friendly_name ( node , * * kwargs ) return node return wrapper