System.Reflection.Emit.ILGeneration
Помогает при построения пользовательских атрибутов.
Инициализирует экземпляр класса CustomAttributeBuilder с передачей конструктора для пользовательских атрибутов, а также аргументов этого конструктора.
Конструктор пользовательского атрибута.
Аргументы конструктора пользовательского атрибута.
является статическим или закрытым.– или – Число переданных аргументов не соответствует числу параметров конструктора, что противоречит соглашению о вызовах конструктора.– или – Тип переданного аргумента не соответствует типу параметра, объявленного в конструкторе. – или –Предоставленный аргумент имеет ссылочный тип, отличный от или .
Значение параметра или — null.
Инициализирует экземпляр класса CustomAttributeBuilder с передачей конструктора для пользовательских атрибутов, аргументов этого конструктора, а также набора пар поля и значения.
Конструктор пользовательского атрибута.
Аргументы конструктора пользовательского атрибута.
Указанные поля пользовательского атрибута.
Значения указанных полей пользовательского атрибута.
Длины массивов и различны.– или – является статическим или закрытым.– или – Число переданных аргументов не соответствует числу параметров конструктора, что противоречит соглашению о вызовах конструктора.– или – Тип переданного аргумента не соответствует типу параметра, объявленного в конструкторе.– или – Типы значений полей не соответствуют типам указанных полей.– или – Поле не принадлежит к тому же классу или базовому классу, что и конструктор. – или –Предоставленный аргумент или именованное поле имеет ссылочный тип, отличный от или .
Один из параметров имеет значение null.
Инициализирует экземпляр класса CustomAttributeBuilder с передачей конструктора для пользовательских атрибутов, аргументов этого конструктора, а также набора поименованных пар значений или свойств.
Конструктор пользовательского атрибута.
Аргументы конструктора пользовательского атрибута.
Указанные свойства пользовательского атрибута.
Значения указанных свойств пользовательского атрибута.
Длины массивов и различны.– или – является статическим или закрытым.– или – Число переданных аргументов не соответствует числу параметров конструктора, что противоречит соглашению о вызовах конструктора.– или – Тип переданного аргумента не соответствует типу параметра, объявленного в конструкторе.– или – Типы значений свойств не соответствуют типам указанных свойств.– или – Свойство не имеет установочного метода.– или – Свойство не принадлежит к тому же классу или базовому классу, что и конструктор. – или –Предоставленный аргумент или именованное свойство имеет ссылочный тип, отличный от или .
Один из параметров имеет значение null.
Инициализирует экземпляр класса CustomAttributeBuilder с передачей конструктора для пользовательских атрибутов, аргументов этого конструктора, набора поименованных пар значений или свойств, а также набора поименованных пар значений или полей.
Конструктор пользовательского атрибута.
Аргументы конструктора пользовательского атрибута.
Указанные свойства пользовательского атрибута.
Значения указанных свойств пользовательского атрибута.
Указанные поля пользовательского атрибута.
Значения указанных полей пользовательского атрибута.
Длины массивов и различны.– или – Длины массивов и различны.– или – является статическим или закрытым.– или – Число переданных аргументов не соответствует числу параметров конструктора, что противоречит соглашению о вызовах конструктора.– или – Тип переданного аргумента не соответствует типу параметра, объявленного в конструкторе.– или – Типы значений свойств не соответствуют типам указанных свойств.– или – Типы значений полей не согласуются с типами соответствующих типов полей.– или – Свойство не имеет установочного метода.– или – Свойство или поле не принадлежит к тому же классу или базовому классу, что и конструктор. – или –Предоставленный аргумент, именованное поле или именованное свойство имеет ссылочный тип, отличный от или .
Один из параметров имеет значение null.
Создает инструкции языка MSIL.
Задает начало блока catch.
Объект , представляющая исключение.
Блок catch находится внутри фильтруемого исключения.
Значением является null, а блок фильтра исключений не вернул значение, указывающее, что финальные блоки должны выполняться, пока размещен данный блок catch.
Создаваемые инструкции языка MSIL в данный момент не находятся в блоке исключения.
Задает начало блока исключения для фильтруемого исключения.
Создаваемые инструкции языка MSIL в данный момент не находятся в блоке исключения. – или –Этот объект принадлежит .
Задает начало блока исключения для нефильтруемого исключения.
Метка конца блока.Она обеспечит переход в нужное место для выполнения финальных блоков или прекращения данной попытки.
Задает начало блока ошибки исключения в потоке инструкций языка MSIL.
Созданные инструкции MSIL в настоящее время не находятся в блоке исключения. – или –Этот объект принадлежит .
Задает начало финального блока в потоке инструкций языка MSIL.
Созданные инструкции MSIL в настоящее время не находятся в блоке исключения.
Задает начало лексической области действия.
Этот объект принадлежит .
Объявляет локальную переменную определенного типа.
Объявленная локальная переменная.
Объект , который представляет тип локальной переменной.
Параметр имеет значение null.
Включающий тип был создан с помощью метода .
Объявляет локальную переменную определенного типа; дополнительно может закрепить объект, на который ссылается переменная.
Объект , который представляет локальную переменную.
Объект , который представляет тип локальной переменной.
Значение true для закрепления объекта в памяти; в противном случае — значение false.
Параметр имеет значение null.
Включающий тип был создан с помощью метода .– или –Основной текст включающего метода был создан с помощью метода .
Метод, с которым связан этот объект , не представлен .
Объявляет новую метку.
Возвращает новую метку, которую можно использовать как токен при переходах.
Помещает указанную инструкцию в поток инструкций.
Инструкция языка MSIL, помещаемая в поток.
Помещает заданную инструкцию и символьный аргумент в поток инструкций языка MSIL.
Инструкция MSIL, помещаемая в поток.
Аргумент типа character, помещаемый в поток сразу после инструкции.
Помещает заданную инструкцию и числовой аргумент в поток инструкций языка MSIL.
Инструкция MSIL, помещаемая в поток.Определена в перечислении OpCodes.
Числовой аргумент, помещаемый в поток сразу после инструкции.
Помещает заданную инструкцию и числовой аргумент в поток инструкций языка MSIL.
Инструкция MSIL, включаемая в поток.
Аргумент типа Int, помещаемый в поток сразу после инструкции.
Помещает заданную инструкцию и числовой аргумент в поток инструкций языка MSIL.
Инструкция MSIL, помещаемая в поток.
Числовой аргумент, помещаемый в поток сразу после инструкции.
Помещает заданную инструкцию и числовой аргумент в поток инструкций языка MSIL.
Инструкция MSIL, помещаемая в поток.
Числовой аргумент, помещаемый в поток сразу после инструкции.
Помещает заданную инструкцию и маркер метаданных указанного конструктора в поток инструкций языка MSIL.
Инструкция MSIL, включаемая в поток.
Объект ConstructorInfo, представляющий конструктор.
Параметр имеет значение null.Это исключение появилось только в .NET Framework 4.
Помещает указанную инструкцию в поток инструкций языка MSIL и оставляет место, чтобы после того, как будут произведены необходимые настройки, можно было включить метку.
Инструкция MSIL, включаемая в поток.
Метка, на которую следует осуществить переход из данного места.
Помещает указанную инструкцию в поток инструкций языка MSIL и оставляет место, чтобы после того, как будут произведены необходимые настройки, можно было включить метку.
Инструкция MSIL, включаемая в поток.
Массив объектов меток, на которые следует осуществлять переход из данного места.Задействуются все метки.
Параметр имеет значение null.Это исключение появилось только в .NET Framework 4.
Помещает в поток инструкций языка MSIL заданную инструкцию, за которой следует индекс заданной локальной переменной.
Инструкция MSIL, включаемая в поток.
Локальная переменная.
Родительский метод параметра не соответствует методу, связанному с объектом .
Параметр имеет значение null.
представляет собой 1-байтную инструкцию, а представляет локальную переменную с индексом большим, чем значение Byte.MaxValue.
Помещает заданную инструкцию и токен подписи в поток инструкций языка MSIL.
Инструкция MSIL, включаемая в поток.
Вспомогательный класс для конструирования токена подписи.
Параметр имеет значение null.
Помещает заданную инструкцию и маркер метаданных указанного поля в поток инструкций языка MSIL.
Инструкция MSIL, включаемая в поток.
Объект FieldInfo, представляющий поле.
Помещает в поток инструкций языка MSIL заданную инструкцию, за которой следует маркер метаданных указанного метода.
Инструкция MSIL, включаемая в поток.
Объект MethodInfo, предоставляющий метод.
Параметр имеет значение null.
является универсальным методом, для которого значение свойства равно false.
Помещает заданную инструкцию и символьный аргумент в поток инструкций языка MSIL.
Инструкция MSIL, помещаемая в поток.
Аргумент типа character, помещаемый в поток сразу после инструкции.
Помещает заданную инструкцию и числовой аргумент в поток инструкций языка MSIL.
Инструкция MSIL, помещаемая в поток.
Аргумент типа Single, помещаемый в поток сразу после инструкции.
Помещает в поток инструкций языка MSIL заданную инструкцию, за которой следует маркер метаданных указанной строки.
Инструкция MSIL, включаемая в поток.
Объект String, который подлежит выпуску.
Помещает в поток инструкций языка MSIL заданную инструкцию, за которой следует маркер метаданных для указанного типа.
Инструкция MSIL, помещаемая в поток.
Объект Type.
Параметр имеет значение null.
Помещает инструкцию call или callvirt в поток языка MSIL для вызова метода varargs.
Инструкция MSIL, включаемая в поток.Должно быть , или .
Метод varargs, который следует вызвать.
Типы необязательных аргументов, если метод является методом varargs; в противном случае — null.
не указывает вызов метода.
Параметр имеет значение null.
Соглашение о вызове данного метода не относится к типу varargs, но при этом передаются типы необязательных параметров.Это исключение создается в платформе .NET Framework версии 1.0 и 1.1. В последующих версиях исключений не создается.
Помещает инструкцию в поток инструкций языка MSIL с указанием соглашений по управляемым вызовам для косвенного вызова.
Инструкция MSIL, включаемая в поток.Значением должно быть .
Соглашение по управляемым вызовам, которое следует использовать.
Тип () результата.
Типы обязательных аргументов инструкции.
Типы необязательных аргументов для вызовов varargs.
не является null, однако не содержит флаг .
Выдает инструкции языка MSIL, необходимые для вызова метода с заданной локальной переменной.
Локальная переменная, значение которой следует записать в консоль.
Типом параметра является или , которые не поддерживаются. – или –Отсутствует перегрузка метода , которая принимает тип .
Параметр имеет значение null.
Выдает инструкции языка MSIL, необходимые для вызова метода с заданным полем.
Поле, значение которого следует записать в консоль.
Отсутствует перегрузка метода , принимающего тип указанного поля.
Параметр имеет значение null.
Типом поля является или , которые не поддерживаются.
Выдает инструкции языка MSIL для вызова метода со строкой.
Строка, которую следует напечатать.
Задает конец блока исключения.
Конец блока исключения находится в неподходящем месте в потоке кода.
Создаваемые инструкции языка MSIL в данный момент не находятся в блоке исключения.
Задает конец лексической области действия.
Этот объект принадлежит .
Получает текущее смещение (в байтах) в потоке языка MSIL, выпущенном .
Смещение в потоке языка MSIL, в котором будет выпущена следующая инструкция.
Отмечает текущую позицию в потоке инструкций языка MSIL указанной меткой.
Метка, для которой следует установить индекс.
Параметр содержит неправильный индекс массива меток.– или – Индекс для уже был определен.
Создает инструкцию вызова исключения.
Класс типа исключения, которое требуется создать.
не является классом или производным от класса .– или – Данный тип не имеет конструктора, заданного по умолчанию.
Параметр имеет значение null.
Задает пространство имен, которое следует использовать для определения значений локальных переменных и отслеживаемых величин для текущей активной лексической ограниченной области действия.
Пространство имен, которое следует использовать для определения значений локальных переменных и отслеживаемых величин для текущей активной лексической ограниченной области действия.
Длина параметра равна нулю.
Параметр имеет значение null.
Этот объект принадлежит .
Представляет метку в потоке инструкций.Label используется совместно с классом .
Проверяет, является ли данный объект экземпляром Label и равен ли он этому экземпляру.
true, если является экземпляром Label и равен этому объекту, в противном случае — false.
Объект, который следует сравнить с этим экземпляром Label.
Определяет равенство текущего экземпляра и указанного объекта .
Значение true, если значение параметра равно значению текущего экземпляра; в противном случае — false.
для сравнения с текущим экземпляром.
Создает хэш-код для данного экземпляра.
Возвращает хэш-код для данного экземпляра.
Определяет равенство двух структур .
Значение true, если параметр равен ; в противном случае — значение false.
Объект , используемый для сравнения с .
Объект , используемый для сравнения с .
Указывает, действительно ли не равны две структуры .
true, если значения и не равны; в противном случае — false.
Объект , используемый для сравнения с .
Объект , используемый для сравнения с .
Представляет локальную переменную внутри метода или конструктора.
Возвращает значение, указывающее, закреплен ли в памяти объект, на который ссылается локальная переменная.
Значение true, если объект, на который ссылается локальная переменная, закреплен в памяти; в противном случае — false.
Возвращает начинающийся с нуля индекс локальной переменной в основном тексте метода.
Целочисленное значение, которое представляет последовательность объявления локальной переменной в основном тексте метода.
Возвращает тип локальной переменной.
Объект данной локальной переменной.
Создает или связывает сведения о параметрах.
Извлекает атрибуты данного параметра.
Только для чтения.Извлекает атрибуты данного параметра.
Сообщает, является ли данный параметр входным.
Только для чтения.Сообщает, является ли данный параметр входным.
Сообщает, является ли данный параметр необязательным.
Только для чтения.Указывает, является ли данный параметр необязательным.
Сообщает, является ли данный параметр выходным.
Только для чтения.Сообщает, является ли данный параметр выходным.
Извлекает имя данного параметра.
Только для чтения.Извлекает имя данного параметра.
Извлекает позицию подписи для данного параметра.
Только для чтения.Извлекает позицию подписи для данного параметра.
Устанавливает значение, присваиваемое параметру по умолчанию.
Значение, принимаемое данным параметром по умолчанию.
Тип параметра не является поддерживаемым.– или –Тип параметра не совпадает с типом параметра.– или –Параметр имеет тип или другой ссылочный тип, значение параметра не равно null, и значение не может быть присвоено ссылочному типу.
Устанавливает пользовательский атрибут с помощью большого двоичного объекта пользовательских атрибутов.
Конструктор пользовательского атрибута.
Большой двоичный объект байтов, предоставляющий атрибуты.
Значение параметра или — null.
Задание пользовательского атрибута с помощью средства построения пользовательских атрибутов.
Экземпляр вспомогательного класса для определения пользовательского атрибута.
Параметр имеет значение null.
Предоставляет методы построения сигнатур.
Добавляет аргумент к сигнатуре.
Тип аргумента.
Подпись уже была закончена.
Параметр имеет значение null.
Добавляет аргумент указанного типа к сигнатуре, определяя, должен ли этот аргумент быть закреплен.
Тип аргумента.
Значение true, если аргумент закреплен; в противном случае — false.
Параметр имеет значение null.
Добавляет аргумент к сигнатуре с указанными пользовательскими модификаторами.
Тип аргумента.
Массив типов представляет собой требуемые пользовательские модификаторы для аргумента, например или .Если аргумент не имеет требуемых пользовательских модификаторов, укажите значение null.
Массив типов представляет собой необязательные пользовательские модификаторы для аргумента, например или .Если аргумент не имеет необязательных пользовательских модификаторов, укажите значение null.
Параметр имеет значение null. – или –Элемент равен или null.
Подпись уже была закончена. – или –Один из указанных пользовательских модификаторов имеет тип массива.– или –Один из указанных пользовательских модификаторов является открытым универсальным типом.То есть значение свойства для пользовательского модификатора равно true.
Добавляет набор аргументов к сигнатуре с указанными пользовательскими модификаторами.
Типы добавляемых аргументов.
Массив массивов типов.Каждый массив типов представляет собой требуемые пользовательские модификаторы для соответствующего аргумента, например или .Если определенный аргумент не содержит требуемые пользовательские модификаторы, вместо массива данных укажите null.Если ни один из аргументов не содержит требуемые пользовательские модификаторы, вместо массива массивов укажите null.
Массив массивов типов.Каждый массив типов представляет собой необязательные пользовательские модификаторы для соответствующего аргумента, например или .Если определенный аргумент не содержит необязательные пользовательские модификаторы, вместо массива данных укажите null.Если ни один из аргументов не содержит необязательные пользовательские модификаторы, вместо массива массивов укажите null.
Элемент параметра имеет значение null. – или –Один из указанных пользовательских модификаторов имеет значение null. (Однако значение null может быть указано для массива пользовательских модификаторов для любого аргумента).
Подпись уже была закончена. – или –Один из указанных пользовательских модификаторов имеет тип массива.– или –Один из указанных пользовательских модификаторов является открытым универсальным типом.То есть значение свойства для пользовательского модификатора равно true.– или –Размер или не равен размеру .
Помечает конец фиксированной части функции с переменным количеством аргументов.Используется только в том случае, если вызывающий оператор создает место вызова сигнатуры функции с переменным количеством аргументов.
Проверяет, равен ли этот экземпляр данному объекту.
Значение true, если данный объект является объектом SignatureHelper и предоставляет ту же самую сигнатуру; в противном случае — значение false.
Объект, с которым нужно сравнить данный экземпляр.
Возвращает вспомогательный объект сигнатуры для поля.
Объект SignatureHelper для поля.
Динамический модуль, который содержит поле, для которого запрашивается SignatureHelper.
Создает и возвращает хэш-код для этого экземпляра.
Возвращает хэш-код на основе имени.
Возвращает вспомогательный объект сигнатуры для локальной переменной.
Объект для локальной переменной.
Возвращает вспомогательный объект сигнатуры для локальной переменной.
Объект SignatureHelper для локальной переменной.
Динамический модуль, который содержит локальную переменную, для которой запрашивается SignatureHelper.
Возвращает вспомогательный объект сигнатуры для метода, получая на вход соглашение о вызове и тип возвращаемого значения.
Объект SignatureHelper для метода.
Соглашение о вызове метода.
Тип возвращаемого значения метода или значение null для типа возвращаемого значения void (процедура Sub в Visual Basic).
Возвращает вспомогательный объект сигнатуры для метода, получая на вход модуль метода, соглашение о вызове и возвращаемый тип.
Объект SignatureHelper для метода.
Модуль , содержащий метод, для которого запрашивается SignatureHelper.
Соглашение о вызове метода.
Тип возвращаемого значения метода или значение null для типа возвращаемого значения void (процедура Sub в Visual Basic).
Параметр имеет значение null.
Параметр не является объектом .
Возвращает вспомогательный объект сигнатуры для метода со стандартным соглашением о вызове, имея в наличии модуль метода, тип возвращаемого значения и типы аргументов.
Объект SignatureHelper для метода.
Модуль , содержащий метод, для которого запрашивается SignatureHelper.
Тип возвращаемого значения метода или значение null для типа возвращаемого значения void (процедура Sub в Visual Basic).
Типы аргументов метода или значение null, если метод не содержит аргументов.
Параметр имеет значение null.– или –Элемент параметра имеет значение null.
Параметр не является объектом .
Возвращает вспомогательный объект подписи для свойства, получая на вход динамический модуль, содержащий свойство, соглашение о вызове, тип свойства, аргументы свойства и пользовательские модификаторы для типа возвращаемого значения и аргументов.
Объект для свойства.
Модуль , содержащий свойство, для которого запрашивается .
Соглашение о вызовах методов доступа к свойству.
тип свойства;
Массив типов представляет собой требуемые пользовательские модификаторы для возвращаемого типа, например или .Если у типа возвращаемого значения нет обязательных пользовательских модификаторов, укажите значение null.
Массив типов представляет собой необязательные пользовательские модификаторы для возвращаемого типа, например или .Если у типа возвращаемого значения нет необязательных пользовательских модификаторов, укажите значение null.
Типы аргументов свойств или null, если свойство не содержит аргументов.
Массив массивов типов.Каждый массив типов представляет собой требуемые пользовательские модификаторы для соответствующего свойства.Если определенный аргумент не содержит требуемые пользовательские модификаторы, вместо массива данных укажите null.Если свойство не содержит аргументов или если аргументы не содержат пользовательские модификаторы, укажите значение null вместо массива массивов.
Массив массивов типов.Каждый массив типов представляет собой необязательные пользовательские модификаторы для соответствующего свойства.Если определенный аргумент не содержит необязательные пользовательские модификаторы, вместо массива данных укажите null.Если свойство не содержит аргументов или если аргументы не содержат необязательные пользовательские модификаторы, укажите значение null вместо массива массивов.
Параметр имеет значение null.– или –Элемент параметра имеет значение null. – или –Один из указанных пользовательских модификаторов имеет значение null. (Однако значение null может быть указано для массива пользовательских модификаторов для любого аргумента).
Подпись уже была закончена. – или –Параметр не является объектом .– или –Один из указанных пользовательских модификаторов имеет тип массива.– или –Один из указанных пользовательских модификаторов является открытым универсальным типом.То есть значение свойства для пользовательского модификатора равно true.– или –Размер или не равен размеру .
Возвращает вспомогательный объект сигнатуры для свойства, получая на вход модуль, содержащий свойство, тип свойства и аргументы свойства.
Объект для свойства.
Модуль , содержащий свойство, для которого запрашивается .
тип свойства;
Типы аргументов или значение null, если в свойстве отсутствуют аргументы.
Параметр имеет значение null.– или –Элемент параметра имеет значение null.
Параметр не является объектом .
Возвращает вспомогательный объект сигнатуры для свойства, получая на вход динамический модуль, содержащий свойство, тип свойства, аргументы свойства и пользовательские модификаторы для типа возвращаемого значения и аргументов.
Объект для свойства.
Модуль , содержащий свойство, для которого запрашивается .
тип свойства;
Массив типов представляет собой требуемые пользовательские модификаторы для возвращаемого типа, например или .Если у типа возвращаемого значения нет обязательных пользовательских модификаторов, укажите значение null.
Массив типов представляет собой необязательные пользовательские модификаторы для возвращаемого типа, например или .Если у типа возвращаемого значения нет необязательных пользовательских модификаторов, укажите значение null.
Типы аргументов свойств или null, если свойство не содержит аргументов.
Массив массивов типов.Каждый массив типов представляет собой требуемые пользовательские модификаторы для соответствующего свойства.Если определенный аргумент не содержит требуемые пользовательские модификаторы, вместо массива данных укажите null.Если свойство не содержит аргументов или если аргументы не содержат пользовательские модификаторы, укажите значение null вместо массива массивов.
Массив массивов типов.Каждый массив типов представляет собой необязательные пользовательские модификаторы для соответствующего свойства.Если определенный аргумент не содержит необязательные пользовательские модификаторы, вместо массива данных укажите null.Если свойство не содержит аргументов или если аргументы не содержат необязательные пользовательские модификаторы, укажите значение null вместо массива массивов.
Параметр имеет значение null.– или –Элемент параметра имеет значение null. – или –Один из указанных пользовательских модификаторов имеет значение null. (Однако значение null может быть указано для массива пользовательских модификаторов для любого аргумента).
Подпись уже была закончена. – или –Параметр не является объектом .– или –Один из указанных пользовательских модификаторов имеет тип массива.– или –Один из указанных пользовательских модификаторов является открытым универсальным типом.То есть значение свойства для пользовательского модификатора равно true.– или –Размер или не равен размеру .
Добавляет к сигнатуре конечный токен и помечает сигнатуру как законченную, поэтому больше никакие токены не могут быть добавлены.
Возвращает массив байтов, содержащий сигнатуру целиком.
Возвращает строку, представляющую аргументы сигнатуры.
Возвращает строку, представляющую аргументы этой сигнатуры.