Wyvern.Module (wyvern v1.0.3)

Copy Markdown

The Module structure represents a single LLVM module as a flat namespace of globals and functions.

Summary

Types

t()

@type t() :: %Wyvern.Module{
  declarations: [Wyvern.Declaration.t()],
  functions: [Wyvern.Function.t()],
  globals: [Wyvern.GlobalVariable.t()],
  name: String.t(),
  named_structs: [Wyvern.Type.NamedStruct.t()],
  source_path: String.t(),
  target_datalayout: String.t(),
  target_triple: String.t()
}

Functions

new(name, source_path, opts \\ [])

to_ir(module, opts \\ [])

@spec to_ir(t(), keyword()) :: String.t()