abstract class Tinman.Core.BuildInformation

Abstract base for classes that represent build information of a module.

Public / Constructors


public static method For → (4)

moduleName in : string

See ModuleName.

versionMajor in : int32

See VersionMajor.

versionMinor in : int32

See VersionMinor

buildDate in : string

See BuildDate.

returns → BuildInformation

The BuildInformation instance.

Creates a new instance of BuildInformation.


public static method Load → (1)

path in : Path

Path to a module descriptor text file, in CharacterEncoding.UTF_8 encoding.

returns → BuildInformation

The loaded BuildInformation.

Load the given module descriptor file.

A module descriptor file is a text file in CharacterEncoding.UTF_8 encoding which conforms to the following Grammar:

descriptor    := module-name lb version-major lb version-minor lb build-date ;

build-date    := digit[4] '/' digit[2] '/' digit[2] ;
lb            := '\r' '\n'? | '\n' ;
module-name   := name ;
version-major := number ;
version-minor := number ;

name          := ]\n\r[+ ;
number        := digit+ ;

The following is an example for a module named MyModule with the version0.9:


If an I/O error has occurred.


If the file content is malformed.

Public / Methods


public method Save → (1)

path in : Path

Path to the module descriptor file.

Saves a module descriptor file.


If an I/O error has occurred.


2 overloads

public method ToString1 → (3)

includeModuleName in : bool

Include ModuleName?

includeVersion opt : bool = true

Include VersionMajor and VersionMinor?

includeBuildDate opt : bool = true

Include BuildDate?

returns → string

human-readable string representation.

Returns a human-readable string representation of this build information.

Public / Attributes


public abstract attribute BuildDate → (get)

value : string

The build date string.

The date of the build.

The string value stores the build date in the following format:


public abstract attribute ModuleName → (get)

value : string

The build module name string.

Machine-readable and human-understandable name of the code module this build information is referring to.


public attribute Version → (get)

value : string

The version number string.

The version number of the build in the form: major.minor.


public abstract attribute VersionMajor → (get)

value : int32

The major version number.

The major version number of the build.

Each time the major version number is increased, the minor version number is reset to 0. Breaking changes and thus code migration can become necessary between major versions.


public abstract attribute VersionMinor → (get)

value : int32

The bugfix number of the build version.

The minor version number of the build.

The minor version number is incremented after bugfixes and patches which do not affect API compatibility, thus breaking changes will not occur and code migration is not necessary.