std/effecttraits
Source EditЭтот модуль предоставляет доступ к эффектам .raises, выведенным для макросистемы Nim. С: Версия 1.4.
Существование этого стандартного модуля можно проверить с помощью defined(nimHasEffectTraitsModule).
Импорты
- macros
Процедуры
proc getForbidsList(fn: NimNode): NimNode {....raises: [], tags: [], forbids: [].}- Извлекает список
.forbidsдля функции/процедуры/др.fn.fnдолжен быть разрешенным символом типаnnkSym. Это подразумевает, что макрос, вызывающий эту процедуру, должен приниматьtypedаргументов, а неuntypedаргументов. Source Edit proc getRaisesList(fn: NimNode): NimNode {....raises: [], tags: [], forbids: [].}- Извлекает список
.raisesдля функции/процедуры/др.fn.fnдолжен быть разрешенным символом типаnnkSym. Это подразумевает, что макрос, вызывающий эту процедуру, должен приниматьtypedаргументов, а неuntypedаргументов. Source Edit proc getTagsList(fn: NimNode): NimNode {....raises: [], tags: [], forbids: [].}- Извлекает список
.tagsдля функции/процедуры/др.fn.fnдолжен быть разрешенным символом типаnnkSym. Это подразумевает, что макрос, вызывающий эту процедуру, должен приниматьtypedаргументов, а неuntypedаргументов. Source Edit proc hasNoSideEffects(fn: NimNode): bool {....raises: [], tags: [], forbids: [].}- Возвращает true, если функция/процедура/др.
fnимеетnoSideEffect.fnдолжен быть разрешенным символом типаnnkSym. Это подразумевает, что макрос, вызывающий эту процедуру, должен приниматьtypedаргументов, а неuntypedаргументов. Source Edit proc isGcSafe(fn: NimNode): bool {....raises: [], tags: [], forbids: [].}- Возвращает true, если функция/процедура/др.
fnявляетсяgcsafe.fnдолжен быть разрешенным символом типаnnkSym. Это подразумевает, что макрос, вызывающий эту процедуру, должен приниматьtypedаргументов, а неuntypedаргументов. Source Edit
© 2006–2024 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/effecttraits.html