View Source Kinda.CodeGen.DeclarationSurfaces (kinda v0.11.0)
The resolved declaration surfaces of a generator module.
from_generator/2 loads a generator module's declaration source (a module
implementing declaration_manifest/0 and optionally kinds/0) and resolves
it into the source declaration manifest and the final declaration manifest,
normalizing NIF declarations and merging the NIFs implied by resource kinds.
Summary
Types
@type source_declaration_manifest() :: Kinda.CodeGen.DeclarationManifest.t() | nil
@type t() :: %Kinda.CodeGen.DeclarationSurfaces{ declaration_manifest: Kinda.CodeGen.DeclarationManifest.t(), source_declaration_manifest: source_declaration_manifest() }
Functions
@spec declaration_manifest(t()) :: Kinda.CodeGen.DeclarationManifest.t()
@spec from_parts(source_declaration_manifest(), Kinda.CodeGen.DeclarationManifest.t()) :: t()
@spec load_source(module()) :: source_declaration_manifest()
@spec nif_decls(t()) :: [Kinda.CodeGen.NIFDecl.t()]
@spec source_declaration_manifest(t()) :: source_declaration_manifest()
@spec type_decls(t()) :: [Kinda.CodeGen.TypeDecl.t()]