nimTitle types types.html module compiler/types 0
nim preferName types.html#preferName TPreferedDesc.preferName 20
nim preferDesc types.html#preferDesc TPreferedDesc.preferDesc 20
nim preferExported types.html#preferExported TPreferedDesc.preferExported 20
nim preferModuleInfo types.html#preferModuleInfo TPreferedDesc.preferModuleInfo 20
nim preferGenericArg types.html#preferGenericArg TPreferedDesc.preferGenericArg 20
nim preferTypeName types.html#preferTypeName TPreferedDesc.preferTypeName 20
nim preferResolved types.html#preferResolved TPreferedDesc.preferResolved 20
nim preferMixed types.html#preferMixed TPreferedDesc.preferMixed 20
nim TPreferedDesc types.html#TPreferedDesc enum TPreferedDesc 20
nim isNone types.html#isNone TTypeRelation.isNone 32
nim isConvertible types.html#isConvertible TTypeRelation.isConvertible 32
nim isIntConv types.html#isIntConv TTypeRelation.isIntConv 32
nim isSubtype types.html#isSubtype TTypeRelation.isSubtype 32
nim isSubrange types.html#isSubrange TTypeRelation.isSubrange 32
nim isBothMetaConvertible types.html#isBothMetaConvertible TTypeRelation.isBothMetaConvertible 32
nim isInferred types.html#isInferred TTypeRelation.isInferred 32
nim isInferredConvertible types.html#isInferredConvertible TTypeRelation.isInferredConvertible 32
nim isGeneric types.html#isGeneric TTypeRelation.isGeneric 32
nim isFromIntLit types.html#isFromIntLit TTypeRelation.isFromIntLit 32
nim isEqual types.html#isEqual TTypeRelation.isEqual 32
nim TTypeRelation types.html#TTypeRelation enum TTypeRelation 32
nim pcmNoSideEffect types.html#pcmNoSideEffect ProcConvMismatch.pcmNoSideEffect 48
nim pcmNotGcSafe types.html#pcmNotGcSafe ProcConvMismatch.pcmNotGcSafe 48
nim pcmNotIterator types.html#pcmNotIterator ProcConvMismatch.pcmNotIterator 48
nim pcmDifferentCallConv types.html#pcmDifferentCallConv ProcConvMismatch.pcmDifferentCallConv 48
nim ProcConvMismatch types.html#ProcConvMismatch enum ProcConvMismatch 48
nim typeToString types.html#typeToString,PType,TPreferedDesc proc typeToString(typ: PType; prefer: TPreferedDesc = preferName): string 54
nim addTypeDeclVerboseMaybe types.html#addTypeDeclVerboseMaybe,string,ConfigRef,PType proc addTypeDeclVerboseMaybe(result: var string; conf: ConfigRef; typ: PType) 56
nim `$` types.html#$.t,PType template `$`(typ: PType): string 63
nim base types.html#base,PType proc base(t: PType): PType 65
nim TTypeIter types.html#TTypeIter type TTypeIter 70
nim TTypeMutator types.html#TTypeMutator type TTypeMutator 71
nim TTypePredicate types.html#TTypePredicate type TTypePredicate 72
nim iterOverType types.html#iterOverType,PType,TTypeIter,RootRef proc iterOverType(t: PType; iter: TTypeIter; closure: RootRef): bool 74
nim mutateType types.html#mutateType,PType,TTypeMutator,RootRef proc mutateType(t: PType; iter: TTypeMutator; closure: RootRef): PType 76
nim paramsNotEqual types.html#paramsNotEqual TParamsEquality.paramsNotEqual 80
nim paramsEqual types.html#paramsEqual TParamsEquality.paramsEqual 80
nim paramsIncompatible types.html#paramsIncompatible TParamsEquality.paramsIncompatible 80
nim TParamsEquality types.html#TParamsEquality enum TParamsEquality 80
nim equalParams types.html#equalParams,PNode,PNode proc equalParams(a, b: PNode): TParamsEquality 89
nim abstractPtrs types.html#abstractPtrs const abstractPtrs 95
nim abstractVar types.html#abstractVar const abstractVar 97
nim abstractRange types.html#abstractRange const abstractRange 99
nim abstractInstOwned types.html#abstractInstOwned const abstractInstOwned 101
nim skipPtrs types.html#skipPtrs const skipPtrs 102
nim typedescPtrs types.html#typedescPtrs const typedescPtrs 105
nim typedescInst types.html#typedescInst const typedescInst 106
nim invalidGenericInst types.html#invalidGenericInst,PType proc invalidGenericInst(f: PType): bool 108
nim isPureObject types.html#isPureObject,PType proc isPureObject(typ: PType): bool 111
nim isUnsigned types.html#isUnsigned,PType proc isUnsigned(t: PType): bool 117
nim getOrdValue types.html#getOrdValue,PNode proc getOrdValue(n: PNode; onError = high(Int128)): Int128 120
nim getFloatValue types.html#getFloatValue,PNode proc getFloatValue(n: PNode): BiggestFloat 144
nim isIntLit types.html#isIntLit,PType proc isIntLit(t: PType): bool 150
nim isFloatLit types.html#isFloatLit,PType proc isFloatLit(t: PType): bool 153
nim addTypeHeader types.html#addTypeHeader,string,ConfigRef,PType,TPreferedDesc proc addTypeHeader(result: var string; conf: ConfigRef; typ: PType;\n prefer: TPreferedDesc = preferMixed; getDeclarationPath = true) 156
nim getProcHeader types.html#getProcHeader,ConfigRef,PSym,TPreferedDesc proc getProcHeader(conf: ConfigRef; sym: PSym; prefer: TPreferedDesc = preferName;\n getDeclarationPath = true): string 160
nim elemType types.html#elemType,PType proc elemType(t: PType): PType 181
nim enumHasHoles types.html#enumHasHoles,PType proc enumHasHoles(t: PType): bool 190
nim isOrdinalType types.html#isOrdinalType,PType,bool proc isOrdinalType(t: PType; allowEnumWithHoles: bool = false): bool 194
nim searchTypeFor types.html#searchTypeFor,PType,TTypePredicate proc searchTypeFor(t: PType; predicate: TTypePredicate): bool 283
nim containsObject types.html#containsObject,PType proc containsObject(t: PType): bool 290
nim frNone types.html#frNone TTypeFieldResult.frNone 299
nim frHeader types.html#frHeader TTypeFieldResult.frHeader 299
nim frEmbedded types.html#frEmbedded TTypeFieldResult.frEmbedded 299
nim TTypeFieldResult types.html#TTypeFieldResult enum TTypeFieldResult 299
nim analyseObjectWithTypeField types.html#analyseObjectWithTypeField,PType proc analyseObjectWithTypeField(t: PType): TTypeFieldResult 333
nim containsGarbageCollectedRef types.html#containsGarbageCollectedRef,PType proc containsGarbageCollectedRef(typ: PType): bool 346
nim containsManagedMemory types.html#containsManagedMemory,PType proc containsManagedMemory(typ: PType): bool 355
nim containsTyRef types.html#containsTyRef,PType proc containsTyRef(typ: PType): bool 361
nim containsHiddenPointer types.html#containsHiddenPointer,PType proc containsHiddenPointer(typ: PType): bool 368
nim isFinal types.html#isFinal,PType proc isFinal(t: PType): bool 411
nim canFormAcycle types.html#canFormAcycle,PType proc canFormAcycle(typ: PType): bool 415
nim bindConcreteTypeToUserTypeClass types.html#bindConcreteTypeToUserTypeClass.t,PType,PType template bindConcreteTypeToUserTypeClass(tc, concrete: PType) 486
nim isResolvedUserTypeClass types.html#isResolvedUserTypeClass.t,PType template isResolvedUserTypeClass(t: PType): bool 496
nim firstOrd types.html#firstOrd,ConfigRef,PType proc firstOrd(conf: ConfigRef; t: PType): Int128 745
nim firstFloat types.html#firstFloat,PType proc firstFloat(t: PType): BiggestFloat 790
nim targetSizeSignedToKind types.html#targetSizeSignedToKind,ConfigRef proc targetSizeSignedToKind(conf: ConfigRef): TTypeKind 805
nim targetSizeUnsignedToKind types.html#targetSizeUnsignedToKind,ConfigRef proc targetSizeUnsignedToKind(conf: ConfigRef): TTypeKind 812
nim normalizeKind types.html#normalizeKind,ConfigRef,TTypeKind proc normalizeKind(conf: ConfigRef; k: TTypeKind): TTypeKind 819
nim lastOrd types.html#lastOrd,ConfigRef,PType proc lastOrd(conf: ConfigRef; t: PType): Int128 828
nim lastFloat types.html#lastFloat,PType proc lastFloat(t: PType): BiggestFloat 878
nim floatRangeCheck types.html#floatRangeCheck,BiggestFloat,PType proc floatRangeCheck(x: BiggestFloat; t: PType): bool 893
nim lengthOrd types.html#lengthOrd,ConfigRef,PType proc lengthOrd(conf: ConfigRef; t: PType): Int128 910
nim dcEq types.html#dcEq TDistinctCompare.dcEq 921
nim dcEqIgnoreDistinct types.html#dcEqIgnoreDistinct TDistinctCompare.dcEqIgnoreDistinct 921
nim dcEqOrDistinctOf types.html#dcEqOrDistinctOf TDistinctCompare.dcEqOrDistinctOf 921
nim TDistinctCompare types.html#TDistinctCompare enum TDistinctCompare 921
nim IgnoreTupleFields types.html#IgnoreTupleFields TTypeCmpFlag.IgnoreTupleFields 927
nim IgnoreCC types.html#IgnoreCC TTypeCmpFlag.IgnoreCC 927
nim ExactTypeDescValues types.html#ExactTypeDescValues TTypeCmpFlag.ExactTypeDescValues 927
nim ExactGenericParams types.html#ExactGenericParams TTypeCmpFlag.ExactGenericParams 927
nim ExactConstraints types.html#ExactConstraints TTypeCmpFlag.ExactConstraints 927
nim ExactGcSafety types.html#ExactGcSafety TTypeCmpFlag.ExactGcSafety 927
nim AllowCommonBase types.html#AllowCommonBase TTypeCmpFlag.AllowCommonBase 927
nim PickyCAliases types.html#PickyCAliases TTypeCmpFlag.PickyCAliases 927
nim TTypeCmpFlag types.html#TTypeCmpFlag enum TTypeCmpFlag 927
nim TTypeCmpFlags types.html#TTypeCmpFlags type TTypeCmpFlags 937
nim sameType types.html#sameType,PType,PType,TTypeCmpFlags proc sameType(a, b: PType; flags: TTypeCmpFlags = {}): bool 963
nim sameTypeOrNil types.html#sameTypeOrNil,PType,PType,TTypeCmpFlags proc sameTypeOrNil(a, b: PType; flags: TTypeCmpFlags = {}): bool 968
nim sameObjectTypes types.html#sameObjectTypes,PType,PType proc sameObjectTypes(a, b: PType): bool 1074
nim sameDistinctTypes types.html#sameDistinctTypes,PType,PType proc sameDistinctTypes(a, b: PType): bool 1080
nim sameEnumTypes types.html#sameEnumTypes,PType,PType proc sameEnumTypes(a, b: PType): bool 1083
nim isGenericAlias types.html#isGenericAlias,PType proc isGenericAlias(t: PType): bool 1126
nim skipGenericAlias types.html#skipGenericAlias,PType proc skipGenericAlias(t: PType): PType 1129
nim sameFlags types.html#sameFlags,PType,PType proc sameFlags(a, b: PType): bool 1132
nim sameBackendType types.html#sameBackendType,PType,PType proc sameBackendType(x, y: PType): bool 1268
nim compareTypes types.html#compareTypes,PType,PType,TDistinctCompare,TTypeCmpFlags proc compareTypes(x, y: PType; cmp: TDistinctCompare = dcEq;\n flags: TTypeCmpFlags = {}): bool 1274
nim inheritanceDiff types.html#inheritanceDiff,PType,PType proc inheritanceDiff(a, b: PType): int 1285
nim commonSuperclass types.html#commonSuperclass,PType,PType proc commonSuperclass(a, b: PType): PType 1309
nim matchType types.html#matchType,PType,openArray[tuple[TTypeKind,int]],TTypeKind proc matchType(a: PType; pattern: openArray[tuple[k: TTypeKind, i: int]];\n last: TTypeKind): bool 1333
nim szUnknownSize types.html#szUnknownSize const szUnknownSize 21
nim szIllegalRecursion types.html#szIllegalRecursion const szIllegalRecursion 22
nim szUncomputedSize types.html#szUncomputedSize const szUncomputedSize 23
nim szTooBigSize types.html#szTooBigSize const szTooBigSize 24
nim foldSizeOf types.html#foldSizeOf.t,ConfigRef,PNode,PNode template foldSizeOf(conf: ConfigRef; n: PNode; fallback: PNode): PNode 466
nim foldAlignOf types.html#foldAlignOf.t,ConfigRef,PNode,PNode template foldAlignOf(conf: ConfigRef; n: PNode; fallback: PNode): PNode 480
nim foldOffsetOf types.html#foldOffsetOf.t,ConfigRef,PNode,PNode template foldOffsetOf(conf: ConfigRef; n: PNode; fallback: PNode): PNode 494
nim computeSize types.html#computeSize,ConfigRef,PType proc computeSize(conf: ConfigRef; typ: PType): BiggestInt 1345
nim getReturnType types.html#getReturnType,PSym proc getReturnType(s: PSym): PType 1349
nim getAlign types.html#getAlign,ConfigRef,PType proc getAlign(conf: ConfigRef; typ: PType): BiggestInt 1354
nim getSize types.html#getSize,ConfigRef,PType proc getSize(conf: ConfigRef; typ: PType): BiggestInt 1358
nim containsGenericType types.html#containsGenericType,PType proc containsGenericType(t: PType): bool 1375
nim baseOfDistinct types.html#baseOfDistinct,PType,ModuleGraph,IdGenerator proc baseOfDistinct(t: PType; g: ModuleGraph; idgen: IdGenerator): PType 1378
nim safeInheritanceDiff types.html#safeInheritanceDiff,PType,PType proc safeInheritanceDiff(a, b: PType): int 1392
nim efCompat types.html#efCompat EffectsCompat.efCompat 1417
nim efRaisesDiffer types.html#efRaisesDiffer EffectsCompat.efRaisesDiffer 1417
nim efRaisesUnknown types.html#efRaisesUnknown EffectsCompat.efRaisesUnknown 1417
nim efTagsDiffer types.html#efTagsDiffer EffectsCompat.efTagsDiffer 1417
nim efTagsUnknown types.html#efTagsUnknown EffectsCompat.efTagsUnknown 1417
nim efEffectsDelayed types.html#efEffectsDelayed EffectsCompat.efEffectsDelayed 1417
nim efTagsIllegal types.html#efTagsIllegal EffectsCompat.efTagsIllegal 1417
nim EffectsCompat types.html#EffectsCompat enum EffectsCompat 1417
nim compatibleEffects types.html#compatibleEffects,PType,PType proc compatibleEffects(formal, actual: PType): EffectsCompat 1426
nim isCompileTimeOnly types.html#isCompileTimeOnly,PType proc isCompileTimeOnly(t: PType): bool 1474
nim containsCompileTimeOnly types.html#containsCompileTimeOnly,PType proc containsCompileTimeOnly(t: PType): bool 1477
nim safeSkipTypes types.html#safeSkipTypes,PType,TTypeKinds proc safeSkipTypes(t: PType; kinds: TTypeKinds): PType 1484
nim NoneLike types.html#NoneLike OrdinalType.NoneLike 1492
nim IntLike types.html#IntLike OrdinalType.IntLike 1492
nim FloatLike types.html#FloatLike OrdinalType.FloatLike 1492
nim OrdinalType types.html#OrdinalType enum OrdinalType 1492
nim classify types.html#classify,PType proc classify(t: PType): OrdinalType 1495
nim skipConv types.html#skipConv,PNode proc skipConv(n: PNode): PNode 1506
nim skipHidden types.html#skipHidden,PNode proc skipHidden(n: PNode): PNode 1519
nim skipConvTakeType types.html#skipConvTakeType,PNode proc skipConvTakeType(n: PNode): PNode 1531
nim isEmptyContainer types.html#isEmptyContainer,PType proc isEmptyContainer(t: PType): bool 1535
nim takeType types.html#takeType,PType,PType,ModuleGraph,IdGenerator proc takeType(formal, arg: PType; g: ModuleGraph; idgen: IdGenerator): PType 1544
nim skipHiddenSubConv types.html#skipHiddenSubConv,PNode,ModuleGraph,IdGenerator proc skipHiddenSubConv(n: PNode; g: ModuleGraph; idgen: IdGenerator): PNode 1561
nim getProcConvMismatch types.html#getProcConvMismatch,ConfigRef,PType,PType proc getProcConvMismatch(c: ConfigRef; f, a: PType; rel = isNone): (\n set[ProcConvMismatch], TTypeRelation) 1578
nim addPragmaAndCallConvMismatch types.html#addPragmaAndCallConvMismatch,string,PType,PType,ConfigRef proc addPragmaAndCallConvMismatch(message: var string; formal, actual: PType;\n conf: ConfigRef) 1609
nim typeMismatch types.html#typeMismatch,ConfigRef,TLineInfo,PType,PType,PNode proc typeMismatch(conf: ConfigRef; info: TLineInfo; formal, actual: PType; n: PNode) 1648
nim isTupleRecursive types.html#isTupleRecursive,PType proc isTupleRecursive(t: PType): bool 1698
nim isException types.html#isException,PType proc isException(t: PType): bool 1702
nim isDefectException types.html#isDefectException,PType proc isDefectException(t: PType): bool 1713
nim isDefectOrCatchableError types.html#isDefectOrCatchableError,PType proc isDefectOrCatchableError(t: PType): bool 1724
nim isSinkTypeForParam types.html#isSinkTypeForParam,PType proc isSinkTypeForParam(t: PType): bool 1736
nim lookupFieldAgain types.html#lookupFieldAgain,PType,PSym proc lookupFieldAgain(ty: PType; field: PSym): PSym 1747
nim isCharArrayPtr types.html#isCharArrayPtr,PType,bool proc isCharArrayPtr(t: PType; allowPointerToChar: bool): bool 1757
nim lacksMTypeField types.html#lacksMTypeField,PType proc lacksMTypeField(typ: PType): bool 1772