idents

Types

TIdObj = object of RootObj
  id*: int
  Source Edit
PIdObj = ref TIdObj
  Source Edit
PIdent = ref TIdent
  Source Edit
TIdent {...}{.acyclic.} = object of TIdObj
  s*: string
  next*: PIdent
  h*: Hash
  Source Edit
IdentCache = ref object
  buckets: array[0 .. 8192 - 1, PIdent]
  wordCounter: int
  idAnon*, idDelegator*, emptyIdent*: PIdent
  Source Edit

Procs

proc resetIdentCache() {...}{.raises: [], tags: [].}
  Source Edit
proc cmpIgnoreStyle(a, b: cstring; blen: int): int {...}{.raises: [], tags: [].}
  Source Edit
proc getIdent(ic: IdentCache; identifier: cstring; length: int; h: Hash): PIdent {...}{.
    raises: [], tags: [].}
  Source Edit
proc getIdent(ic: IdentCache; identifier: string): PIdent {...}{.raises: [], tags: [].}
  Source Edit
proc getIdent(ic: IdentCache; identifier: string; h: Hash): PIdent {...}{.raises: [],
    tags: [].}
  Source Edit
proc newIdentCache(): IdentCache {...}{.raises: [], tags: [].}
  Source Edit
proc whichKeyword(id: PIdent): TSpecialWord {...}{.raises: [], tags: [].}
  Source Edit