W3cubDocs

/Nim

typeallowed

Source Edit

This module contains 'typeAllowed' and friends which check for invalid types like openArray[var int].

Imports

ast, renderer, options, semdata, types

Types

TTypeAllowedFlag = enum
  taField, taHeap, taConcept, taIsOpenArray, taNoUntyped, taIsTemplateOrMacro,
  taProcContextIsNotMacro, taIsCastable, taIsDefaultField, taVoid
Source Edit
TTypeAllowedFlags = set[TTypeAllowedFlag]
Source Edit
ViewTypeKind = enum
  noView, immutableView, mutableView
Source Edit

Procs

proc classifyViewType(t: PType): ViewTypeKind {....raises: [Exception],
    tags: [RootEffect], forbids: [].}
Source Edit
proc directViewType(t: PType): ViewTypeKind {....raises: [], tags: [], forbids: [].}
Source Edit
proc requiresInit(t: PType): bool {....raises: [Exception], tags: [RootEffect],
                                    forbids: [].}
Source Edit
proc typeAllowed(t: PType; kind: TSymKind; c: PContext;
                 flags: TTypeAllowedFlags = {}): PType {....raises: [Exception],
    tags: [RootEffect], forbids: [].}
Source Edit

© 2006–2024 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/compiler/typeallowed.html