ModuleHeader

class ModuleHeader(val moduleName: ResolvedModuleName)

A module's header information.

Author

Mark van Gulik

Todd L Smith

Parameters

moduleName

The resolved name of the module.

Constructors

Link copied to clipboard
fun ModuleHeader(moduleName: ResolvedModuleName)

Construct a new ModuleHeader.

Functions

Link copied to clipboard
fun applyToModule(loader: AvailLoader): String?

Update the given AvailLoader's module to correspond with information that has been accumulated in this ModuleHeader.

Link copied to clipboard
fun deserializeHeaderFrom(deserializer: Deserializer)

Extract the module's header information from the Deserializer.

Link copied to clipboard
fun serializeHeaderOn(serializer: Serializer)

Output the module header.

Properties

Link copied to clipboard
val entryPointNames: List<String>

A List of Strings which name entry points defined in this module header.

Link copied to clipboard
val entryPoints: MutableList<A_String>

The names of methods that are module entry points.

Link copied to clipboard
val exportedNames: MutableSet<A_String>

The names defined and exported by the module undergoing compilation.

Link copied to clipboard
val importedModuleNames: List<String>

The list of local module names imported by this module header, in the order they appear in the Uses and Extends clauses.

Link copied to clipboard
val importedModules: MutableList<ModuleImport>

The module imports imported by the module undergoing compilation. This includes both modules being extended and modules being simply used.

Link copied to clipboard
val moduleName: ResolvedModuleName

The ModuleName of the module undergoing compilation.

Link copied to clipboard
val pragmas: MutableList<A_Token>

The pragma tokens, which are always string literals.

Link copied to clipboard
var startOfBodyLineNumber: Int = 0

The line number in the file where the body starts (on the same line as the "body" token).

Link copied to clipboard
var startOfBodyPosition: Int = 0

The position in the file where the body starts (right after the "body" token).

Link copied to clipboard
val versions: MutableList<A_String>

The versions for which the module undergoing compilation guarantees support.