Header menu logo Nu

'a Address Type

Specifies the address of an identifiable value. OPTIMIZATION: Names is an array only for speed; it is invalid to mutate it. TODO: have Address constructors throw in Debug mode on invalid address names or if ellipses (...) are used in the wrong place (not at the end).

Record fields

Record Field Description

Anonymous

Full Usage: Anonymous

Field type: bool
Field type: bool

HashCode

Full Usage: HashCode

Field type: int
Field type: int

Names

Full Usage: Names

Field type: string array
Field type: string array

Instance members

Instance member Description

this.Length

Full Usage: this.Length

Returns: int

Get the length of an address by its names.

Returns: int

this.Relative

Full Usage: this.Relative

Returns: bool

Get whether an address is relative, IE, starts with the current symbol '~' or the parent symbol '^'. Otherwise, the address is absolute.

Returns: bool

Static members

Static member Description

address --> address2

Full Usage: address --> address2

Parameters:
Returns: 'a Address

Concatenate two addresses, taking the type of first address.

address : 'a Address
address2 : 'b Address
Returns: 'a Address

address -|- address2

Full Usage: address -|- address2

Parameters:
Returns: 'a Address

Concatenate two addresses of the same type.

address : 'a Address
address2 : 'a Address
Returns: 'a Address

address <-- address2

Full Usage: address <-- address2

Parameters:
Returns: 'b Address

Concatenate two addresses, taking the type of second address.

address : 'a Address
address2 : 'b Address
Returns: 'b Address

Address.Ellipsis

Full Usage: Address.Ellipsis

Returns: obj Address

Make an absolute address with the address tail wildcard.

Returns: obj Address

Address.Wildcard

Full Usage: Address.Wildcard

Returns: obj Address

Make an absolute address with the name wildcard.

Returns: obj Address

Address.acat address address2

Full Usage: Address.acat address address2

Parameters:
Returns: 'a Address

Concatenate two addresses of the same type.

address : 'a Address
address2 : 'a Address
Returns: 'a Address

Address.acatf address address2

Full Usage: Address.acatf address address2

Parameters:
Returns: 'a Address

Concatenate two addresses, taking the type of first address.

address : 'a Address
address2 : 'b Address
Returns: 'a Address

Address.acats address address2

Full Usage: Address.acats address address2

Parameters:
Returns: 'b Address

Concatenate two addresses, taking the type of second address.

address : 'a Address
address2 : 'b Address
Returns: 'b Address

Address.atoa address

Full Usage: Address.atoa address

Parameters:
Returns: 'b Address

Convert an address of type 'a to an address of type 'b.

address : 'a Address
Returns: 'b Address

Address.atooa address

Full Usage: Address.atooa address

Parameters:
Returns: obj Address

Convert any address to an obj Address.

address : 'a Address
Returns: obj Address

Address.atos address

Full Usage: Address.atos address

Parameters:
Returns: string

Convert an address into a string.

address : 'a Address
Returns: string

Address.compare left right

Full Usage: Address.compare left right

Parameters:
Returns: int

Compare Addresses.

left : 'a Address
right : 'a Address
Returns: int

Address.equals left right

Full Usage: Address.equals left right

Parameters:
Returns: bool

Equate Addresses.

left : 'a Address
right : 'a Address
Returns: bool

Address.generalize address

Full Usage: Address.generalize address

Parameters:
Returns: obj Address

Convert any address to an obj Address.

address : 'a Address
Returns: obj Address

Address.hash address

Full Usage: Address.hash address

Parameters:
Returns: int
Modifiers: inline

Hash an Address.

address : 'a Address
Returns: int

Address.itoa address

Full Usage: Address.itoa address

Parameters:
Returns: 'a Address

Convert a weakly-typed Address interface into a strongly-typed address.

address : Address
Returns: 'a Address

Address.ltoa names

Full Usage: Address.ltoa names

Parameters:
    names : string list

Returns: 'a Address

Convert a names list into an address.

names : string list
Returns: 'a Address

Address.makeEmpty ()

Full Usage: Address.makeEmpty ()

Returns: 'a Address

Make an empty address. NOTE: do not move this function as the AddressConverter's reflection code relies on it being exactly here!

Returns: 'a Address

Address.makeFromString addressStr

Full Usage: Address.makeFromString addressStr

Parameters:
    addressStr : string

Returns: 'a Address

Make an address from a '/' delimited string. NOTE: do not move this function as the AddressConverter's reflection code relies on it being exactly here!

addressStr : string
Returns: 'a Address

Address.ntoa name

Full Usage: Address.ntoa name

Parameters:
    name : string

Returns: 'a Address

Convert a single name into an address.

name : string
Returns: 'a Address

Address.qtoa names

Full Usage: Address.qtoa names

Parameters:
    names : string seq

Returns: 'a Address

Convert a names sequence into an address.

names : string seq
Returns: 'a Address

Address.rtoa names

Full Usage: Address.rtoa names

Parameters:
    names : string array

Returns: 'a Address

Convert a names array into an address.

names : string array
Returns: 'a Address

Address.specialize address

Full Usage: Address.specialize address

Parameters:
Returns: 'a Address

Convert an obj address to any Address.

address : obj Address
Returns: 'a Address

Address.stoa str

Full Usage: Address.stoa str

Parameters:
    str : string

Returns: 'a Address

Convert a string into an address.

str : string
Returns: 'a Address

Type something to start searching.