This module contains the data structures for the C code generation phase.
Types
- BModuleList = ref object of RootObj mainModProcs*, mainModInit*, otherModsInit*, mainDatInit*: Rope mapping*: Rope modules*: seq[BModule] modulesClosed*: seq[BModule] forwardedProcs*: seq[PSym] generatedHeader*: BModule typeInfoMarker*: TypeCacheWithOwner typeInfoMarkerV2*: TypeCacheWithOwner config*: ConfigRef graph*: ModuleGraph strVersion*, seqVersion*: int nimtv*: Rope nimtvDeps*: seq[PType] nimtvDeclared*: IntSet 
- Source Edit
- CodegenFlag = enum preventStackTrace, usesThreadVars, frameDeclared, isHeaderFile, includesStringh, objHasKidsValid, useAliveDataFromDce 
- Source Edit
- TBlock = object id*: int label*: Rope sections*: TCProcSections isLoop*: bool nestedTryStmts*: int16 nestedExceptStmts*: int16 frameLen*: int16 
- Source Edit
- TCFileSection = enum cfsMergeInfo, cfsHeaders, cfsFrameDefines, cfsForwardTypes, cfsTypes, cfsSeqTypes, cfsFieldInfo, cfsTypeInfo, cfsProcHeaders, cfsData, cfsVars, cfsProcs, cfsInitProc, cfsDatInitProc, cfsTypeInit1, cfsTypeInit2, cfsTypeInit3, cfsDebugInit, cfsDynLibInit, cfsDynLibDeinit 
- Source Edit
- TCFileSections = array[TCFileSection, Rope] 
- Source Edit
- TCProcFlag = enum beforeRetNeeded, threadVarAccessed, hasCurFramePointer, noSafePoints, nimErrorFlagAccessed, nimErrorFlagDeclared, nimErrorFlagDisabled 
- Source Edit
- TCProcSection = enum cpsLocals, cpsInit, cpsStmts 
- Source Edit
- TCProcSections = array[TCProcSection, Rope] 
- Source Edit
- TCTypeKind = enum ctVoid, ctChar, ctBool, ctInt, ctInt8, ctInt16, ctInt32, ctInt64, ctFloat, ctFloat32, ctFloat64, ctFloat128, ctUInt, ctUInt8, ctUInt16, ctUInt32, ctUInt64, ctArray, ctPtrToArray, ctStruct, ctPtr, ctNimStr, ctNimSeq, ctProc, ctCString 
- Source Edit
- TypeCacheWithOwner = Table[SigHash, tuple[str: Rope, owner: int32]] 
- Source Edit
Procs
- proc includeHeader(this: BModule; header: string) {....raises: [], tags: [].} 
- Source Edit
- proc newModuleList(g: ModuleGraph): BModuleList {....raises: [], tags: [].} 
- Source Edit
Iterators
- iterator cgenModules(g: BModuleList): BModule {....raises: [], tags: [].} 
- Source Edit