Arity
module Arity| Assembly | Xantham.Generator |
Functions and values
repairArity: Pass<ShapeModel>
repairArity: Pass<ShapeModel>The ways a shaped model still fails to be F#, repaired in place. FS0035: a generic abbreviation whose target leaves a parameter unused (type Params<'P> = obj) is rewritten as an erased phantom, which keeps the name and the arity; where the head itself is unwritable the declaration goes and its references widen. FS0033: a generic declaration named bare, and an application at an arity the head does not declare, widen to obj. FS0252: a settable property of type unit is demoted to read-only.
repairConstraints: Pass<ShapeModel>
repairConstraints: Pass<ShapeModel>TypeScript admits a variable at a bounded slot by covariance; F# admits it only where the variable's own bound is the slot's. A head whose bound some application supplies with an unbounded variable, or with one bounded by another instantiation of the same generic, drops the bound (TP012), until every application in the run meets the heads it applies.
resolveModuleSuffixes: Pass<ShapeModel>
resolveModuleSuffixes: Pass<ShapeModel>FS0037: a type X beside the module X its nested names render under compiles the module as XModule, which a declaration of that name then duplicates. The declaration, and every name nested under it, takes the first free numeric suffix (NE001).