code: def register_builtin_transform(transform, builtin_name):
      
  
      def _transform_wrapper(node, context=None):
          result = transform(node, context=context)
          if result:
              if not result.parent:
                  # Let the transformation function determine
                  # the parent for its result. Otherwise,
                  # we set it to be the node we transformed from.
                  result.parent = node
  
              if result.lineno is None:
                  result.lineno = node.lineno
              if result.col_offset is None:
                  result.col_offset = node.col_offset
          return iter([result])
  
      MANAGER.register_transform(
          nodes.Call,
          inference_tip(_transform_wrapper),
          partial(_builtin_filter_predicate, builtin_name=builtin_name),
      )
docs: Register a new transform function for the given *builtin_name*.
  
      The transform function must accept two parameters, a node and
      an optional context.