type

Version

src @Serializable { simple=true }
const class Version : Obj

Version is defined as a list of decimal digits separated by the dot. Convention for Fantom pods is a four part version format of major.minor.build.patch.

constructors

fromStr

Parse a string representation into a Version.

make

Construct with list of integer segments.

fields

defVal

Default value is "0".

methods

build

Get the third segment which represents the build number.

compare

Compare from from most significant segment to least significant segment.

equals

Return true if equal segments.

hash

Return toStr.hash

major

Get the first, most significant segment which represents the major version.

minor

Get the second segment which represents the minor version.

patch

Get the fourth segment which represents the patch number.

segments

Get a readonly list of the integer segments.

toStr

The string format is equivalent to segments.join(".")

Slot Details

build

src Int? build()

Get the third segment which represents the build number. Return null if version has less than three segments.

compare

src virtual override Int compare(Obj obj)

Compare from from most significant segment to least significant segment.

Examples:

1.6 > 1.4
2.0 > 1.9
1.2.3 > 1.2
1.11 > 1.9.3

defVal

src const static Version defVal

Default value is "0".

equals

src virtual override Bool equals(Obj? obj)

Return true if equal segments.

fromStr

src static new fromStr(Str version, Bool checked := true)

Parse a string representation into a Version. If invalid format and checked is false return null, otherwise throw ParseErr.

hash

src virtual override Int hash()

Return toStr.hash

major

src Int major()

Get the first, most significant segment which represents the major version.

make

src static new make(Int[] segments)

Construct with list of integer segments. Throw ArgErr if segments is empty or contains negative numbers.

minor

src Int? minor()

Get the second segment which represents the minor version. Return null if version has less than two segments.

patch

src Int? patch()

Get the fourth segment which represents the patch number. Return null if version has less than four segments.

segments

src Int[] segments()

Get a readonly list of the integer segments.

toStr

src virtual override Str toStr()

The string format is equivalent to segments.join(".")