HORIZON HASKELLDocslts/ghc-9.14.x6d5fdfd2026-10-12Search packagesCtrl K
Theme: |

GHC 9.14.1 · lts/ghc-9.14.x · 6d5fdfd · 2026-10-12

Moduleghc-9.14.1GHC2021

GHC.StgToJS.Ids

Module to deal with JS identifiers

Contents
  1. Helpers for Idents
  2. Helpers for variables
Synopsis
  • Packageghc-9.14.1
  • Exports17
  • LanguageGHC2021
  • LicenceBSD-3-Clause
  • SourceIds.hs

Generate unique Ident for the given ID (uncached!)

The ident has the following forms:

global Id: h$unit:module.name[_num][_type_suffix] local Id: h$$unit:module.name[_num][_type_suffix]_uniq

Note that the string is z-encoded except for "_" delimiters.

Optional "_type_suffix" can be: - "_e" for IdEntry - "_con_e" for IdConEntry

Optional "_num" is passed as an argument to this function. It is used for Haskell Ids that require several JS variables: e.g. 64-bit numbers (Word64#, Int64#), Addr#, StablePtr#, unboxed tuples, etc.

Helpers for Idents

valueidentForIdN :: Id -> Int -> G Ident

Retrieve default Ident for the given Id with sub index

Some types, Word64, Addr#, unboxed tuple have more than one corresponding JS var, hence we use the sub index to identify each subpart / JS variable.

Helpers for variables