docstr: regeister udf to the class
  :param operator_name: string
  :param operator: a function, operator itself
  :param args: arg of operator
  :param kwargs: kwargs of operator
  :return:
docstr_tok: ["regeister","udf","to","the","class",":","param","operator_name",":","string",":","param","operator",":","a","function",",","operator","itself",":","param","args",":","arg","of","operator",":","param","kwargs",":","kwargs","of","operator",":","return",":"]
code: def register(self, operator_name, operator, *args, **kwargs):
      """
      regeister udf to the class
      :param operator_name: string
      :param operator: a function, operator itself
      :param args: arg of operator
      :param kwargs: kwargs of operator
      :return:
      """
  
      def operator_wapper(*wrapper_args):
          return operator(*(wrapper_args + args), **kwargs)
  
      setattr(
          self, operator_name, types.MethodType(operator_wapper, self)
      )
      return self
  
file_path: scikit-opt/sko/base.py
imports: from abc import ABCMeta, abstractmethod
  import types
  import warnings
label_desc: Use image node_id 1 for calling the SkoBase obj's underlying member method code with example usage: obj.register(operator_name, operator) and returns: self, operator