# compiler/typeallowed

Dark Mode

- Index

Search:
Group by:
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

  Source Edit

    TTypeAllowedFlags = set[TTypeAllowedFlag]

  Source Edit

    ViewTypeKind = enum
      noView, immutableView, mutableView

  Source Edit

# Procs

    proc classifyViewType(t: PType): ViewTypeKind {....raises: [Exception],
        tags: [RootEffect].}

  Source Edit

    proc directViewType(t: PType): ViewTypeKind {....raises: [], tags: [].}

  Source Edit

    proc requiresInit(t: PType): bool {....raises: [Exception], tags: [RootEffect].}

  Source Edit

    proc typeAllowed(t: PType; kind: TSymKind; c: PContext;
                     flags: TTypeAllowedFlags = {}): PType {....raises: [Exception],
        tags: [RootEffect].}

  Source Edit