Class CMethod

    • Field Detail

      • access

        protected int access
        флаги доступа к методу AccFlags
      • name

        protected String name
        имя метода
      • descriptor

        protected String descriptor
        дескриптор типов параметров и результата
      • signature

        protected String signature
        сигнатура generic параметров и результата
      • exceptions

        protected String[] exceptions
        исключения генерируемые методом
      • methodByteCodes

        protected List<MethodByteCode> methodByteCodes
        байт-код метода
    • Constructor Detail

      • CMethod

        public CMethod()
        Конструктор по умолчанию
      • CMethod

        public CMethod​(int access,
                       String name,
                       String descriptor,
                       String signature,
                       String[] exceptions)
        Конструктор
        Parameters:
        access - флаги доступа к методу AccFlags
        name - имя метода
        descriptor - дескриптор типов параметров и результата
        signature - сигнатура generic параметров и результата
        exceptions - исключения генерируемые методом
      • CMethod

        public CMethod​(CMethod sample)
        Конструктор копирования
        Parameters:
        sample - образец
    • Method Detail

      • configure

        public CMethod configure​(Consumer<CMethod> conf)
        Конфигурация экземпляра
        Parameters:
        conf - конфигурация
        Returns:
        SELF ссылка
      • getAccess

        public int getAccess()
        Возвращает флаги доступа к методу AccFlags
        Specified by:
        getAccess in interface AccFlagsProperty
        Returns:
        флаги доступа
      • setAccess

        public void setAccess​(int access)
        Указывает флаги доступа к методу AccFlags
        Specified by:
        setAccess in interface AccFlagsProperty
        Parameters:
        access - флаги доступа
      • getName

        public String getName()
        Возвращает имя метода
        Returns:
        имя метода
      • setName

        public void setName​(String name)
        Указывает имя метода
        Parameters:
        name - имя метода
      • getDescriptor

        public String getDescriptor()
        Возвращает дескриптор типов параметров и результата
        Returns:
        дескриптор типов параметров и результата
      • setDescriptor

        public void setDescriptor​(String descriptor)
        Указывает дескриптор типов параметров и результата
        Parameters:
        descriptor - дескриптор типов параметров и результата
      • getSignature

        public String getSignature()
        Возвращает сигнатуру generic параметров и результата
        Returns:
        сигнатура generic параметров и результата
      • setSignature

        public void setSignature​(String signature)
        Указывает сигнатуру generic параметров и результата
        Parameters:
        signature - сигнатура generic параметров и результата
      • getExceptions

        public String[] getExceptions()
        Возвращает исключения генерируемые методом
        Returns:
        исключения
      • setExceptions

        public void setExceptions​(String[] exceptions)
        Указывает исключения генерируемые методом
        Parameters:
        exceptions - исключения
      • getMethodByteCodes

        public List<MethodByteCode> getMethodByteCodes()
        Возвращает байт-код метода
        Returns:
        байт-код метода
      • setMethodByteCodes

        public void setMethodByteCodes​(List<MethodByteCode> ls)
        Указывает байт-код метода
        Parameters:
        ls - байт-код метода
      • nodes

        public xyz.cofe.iter.Eterable<ByteCode> nodes()
        Возвращает дочерние узлы
        Specified by:
        nodes in interface ByteCode
        Specified by:
        nodes in interface xyz.cofe.collection.ImTree<ByteCode>
        Returns:
        дочерние узлы
      • write

        public void write​(org.objectweb.asm.ClassWriter v)
        Specified by:
        write in interface ClazzWriter