TypeRefRender Module
Types
| Type | Description |
|
|
Functions and values
| Function or value |
Description
|
Full Usage:
anchor anchorPath typeRefRender
Parameters:
AnchorPath
typeRefRender : TypeRefRender
Returns: TypeRefRender
|
|
Full Usage:
anchorAndLocalise anchorPath typeRefRender
Parameters:
AnchorPath
typeRefRender : TypeRefRender
Returns: TypeRefRender
|
|
Full Usage:
collapseOpaquePrefixes collapseRoots render
Parameters:
string list
render : TypeRefRender
Returns: TypeRefRender
|
OPAQUE/ERASED PREFIX COLLAPSE: generic applications whose HEAD is an opaque-handle or Erased advisory path carry policy-meaningless arguments (`Zod.ZodType<...garbage...>`, `Erased.X<...>`) — and malformed arg trees (`obj<...>`) break compilation. Collapse the whole application to the head atom; the phantom-arity interfaces make surviving shallow applications legal, this makes DEEP/broken ones vanish. Roots = ErasedRoots + "Erased" + handles.
|
Full Usage:
create nullable kind
Parameters:
bool
kind : ^T
Returns: TypeRefRender
Modifiers: inline Type parameters: ^T (requires (static member Create : Microsoft.FSharp.Core.bool * ^T -> Xantham.Generator.Types.Anchored.TypeRefRender)) |
|
|
A base whose path was rewritten to the `Erased.*` advisory aliases (the policy substitution's output contract) cannot be inherited — the alias IS `obj`. Checked at anchor time like `isInterfaceBase` (post-localise atoms are opaque Widgets); every drop is ledgered by the caller.
|
|
|
Full Usage:
localise anchorPath typeRefRender
Parameters:
AnchorPath
typeRefRender : TypeRefRender
Returns: TypeRefRender
|
|
Full Usage:
mapAtoms f render
Parameters:
TypeRefAtom -> TypeRefAtom
render : TypeRefRender
Returns: TypeRefRender
|
Map every ATOM in a render, recursing through all molecule shapes — the ONE walk the scrubbers share (no mirrored walks).
|
Full Usage:
nonNullable typeRefRender
Parameters:
TypeRefRender
Returns: TypeRefRender
|
|
|
|
Full Usage:
orNullable nullable typeRefRender
Parameters:
bool
typeRefRender : TypeRefRender
Returns: TypeRefRender
Modifiers: inline |
|
Full Usage:
scrubForwardRefs order ledger hostRoot render
Parameters:
string list
ledger : string -> unit
hostRoot : string option
render : TypeRefRender
Returns: TypeRefRender
|
FORWARD-REFERENCE SCRUB: under a placement order (unit DAG), a reference from a definition hosted at unit index H to a type rooted at index R > H points FORWARD in the DAG — uncompilable by construction. Degrade the atom to `obj`, LEDGERED via the callback (Types layer stays context-free).
|
Full Usage:
scrubUndefinedHomeChildren homePaths definedPaths ledger render
Parameters:
HashSet<string>
definedPaths : HashSet<string>
ledger : string -> unit
render : TypeRefRender
Returns: TypeRefRender
|
HOME-CHILD DEF/REF CLOSURE SCRUB (the ledgered "around" for the multi-member shared-rt class — history in partition-gate.baseline 2026-07-04 (6)/(7)): a path atom whose MODULE chain passes through a canonical shared-literal home (the home TYPE as a module segment) names a nested def that per-site leaf stamping can mint with no def to match — one rt referenced through several members, while the rt-keyed TypeStore registers exactly ONE def. Once the fixpoint drive has materialized every child def, a home-child path outside `definedPaths` can never resolve: degrade the atom to `obj`, LEDGERED via the callback (keyed by the home). Inactive until the caller arms it with non-empty home paths (the post-drive second round); paths are compared as dotted `valueOrModified` segment strings.
|
Full Usage:
setNullable nullable typeRefRender
Parameters:
bool
typeRefRender : TypeRefRender
Returns: TypeRefRender
Modifiers: inline |
|
Full Usage:
substituteForHeritage inScopeTyparNames render
Parameters:
Set<string>
render : TypeRefRender
Returns: TypeRefRender
|
|