Nemerle Library
Namespace Nemerle.Utility
sealed abstract class public Getopt

Command line options handling.

Methods:
_N_argument_name8336(string)
_N_concat8150(Nemerle.Utility.Getopt+_N_closure8144,string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]])
_N_is_option8350(Nemerle.Utility.Getopt+_N_closure8282,string)
_N_need_following_arg8364(Nemerle.Utility.Getopt+_N_closure8282,string)
_N_option_name8321(string)
_N_parse_opt8379(Nemerle.Utility.Getopt+_N_closure8282,string,Nemerle.Core.option`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]])
_N_parse_opts8385(Nemerle.Utility.Getopt+_N_closure8282,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]])
_N_stdpref8179(Nemerle.Utility.Getopt+_N_closure8170,Nemerle.Utility.Getopt+_N_closure8144)
_N_stdsuff8187(Nemerle.Utility.Getopt+_N_closure8170)
Error(string)
Parse(([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],Nemerle.Core.list`1[[Nemerle.Utility.Getopt+CliOption, Nemerle.stage1, Version=0.9.3.24, Culture=neutral, PublicKeyToken=null]],Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)

Parses the command line options.

Parse(Nemerle.Core.list`1[[Nemerle.Utility.Getopt+CliOption, Nemerle.stage1, Version=0.9.3.24, Culture=neutral, PublicKeyToken=null]])
Usage(Nemerle.Core.list`1[[Nemerle.Utility.Getopt+CliOption, Nemerle.stage1, Version=0.9.3.24, Culture=neutral, PublicKeyToken=null]])
Types:
sealed nested public class _N_closure7225
sealed nested public class _N_closure7251
sealed nested public class _N_closure7363
sealed nested public class _N_describe_7241
Methods:
.ctor
apply
sealed nested public class _N_static_proxy7878
Methods:
apply_void
Fields:
single_instance
sealed nested public class _N_stdunhandled_7381
Methods:
.ctor
apply_void
abstract nested public class CliOption
Methods:
.ctor
ctor(string)
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]])
ctor(string,string)
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],string)
_N_GetVariantCode
Fields:
aliases
help
name
Types:
sealed nested public class Boolean
Methods:
.ctor
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],string,([bool, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
ctor(string,string,([bool, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],([bool, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
ctor(string,([bool, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
_N_GetVariantCode
Fields:
handler
sealed nested public class Flag
Methods:
.ctor
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],string,Nemerle.Builtins.FunctionVoid)
ctor(string,string,Nemerle.Builtins.FunctionVoid)
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],Nemerle.Builtins.FunctionVoid)
ctor(string,Nemerle.Builtins.FunctionVoid)
_N_GetVariantCode
Fields:
handler
sealed nested public class Int
Methods:
.ctor
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],string,([int, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
ctor(string,string,([int, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],([int, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
ctor(string,([int, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
_N_GetVariantCode
Fields:
handler
sealed nested public class NonOption
Methods:
.ctor
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],string,([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
ctor(string,string,([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
ctor(string,([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
_N_GetVariantCode
Fields:
handler
sealed nested public class PostHelp
Methods:
.ctor
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],string)
ctor(string,string)
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]])
ctor(string)
_N_GetVariantCode
sealed nested public class PreHelp
Methods:
.ctor
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],string)
ctor(string,string)
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]])
ctor(string)
_N_GetVariantCode
sealed nested public class String
Methods:
.ctor
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],string,([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
ctor(string,string,([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
ctor(string,([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
_N_GetVariantCode
Fields:
handler
sealed nested public class SubstitutionString
Methods:
.ctor
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],string,Nemerle.Builtins.([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]], Nemerle.stage1, Version=0.9.3.24, Culture=neutral) -> PublicKeyToken=null] )
ctor(string,string,Nemerle.Builtins.([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]], Nemerle.stage1, Version=0.9.3.24, Culture=neutral) -> PublicKeyToken=null] )
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],Nemerle.Builtins.([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]], Nemerle.stage1, Version=0.9.3.24, Culture=neutral) -> PublicKeyToken=null] )
ctor(string,Nemerle.Builtins.([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]], Nemerle.stage1, Version=0.9.3.24, Culture=neutral) -> PublicKeyToken=null] )
_N_GetVariantCode
Fields:
substitute
sealed nested public class Unhandled
Methods:
.ctor
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],string,([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
ctor(string,string,([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
ctor(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
ctor(string,([string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)
_N_GetVariantCode
Fields:
handler
class Identity
Methods:
ctor
cctor
apply()
Fields:
Instance
class public Identity`2['a,'b]
Methods:
.ctor
.cctor
apply
Fields:
Instance
sealed abstract class public NArray

Helper functions, absent from System.Array.

Methods:
_N_loop14180(Nemerle.Utility.NArray+_N_closure14170`3[['a],['b],['c]],Nemerle.Core.list`1[['a]],int)
_N_loop14211(Nemerle.Utility.NArray+_N_closure14201`3[['a],['b],['c]],Nemerle.Core.list`1[['b]],int)
_N_loop14310(Nemerle.Utility.NArray+_N_closure14300`3[['a],['b],['c]],Nemerle.Core.list`1[['a]],int,)
_N_loop14343(Nemerle.Utility.NArray+_N_closure14333`3[['a],['b],['c]],Nemerle.Core.list`1[['b]],int,)
ChopFirstN('a[],int)

Return a fresh copy of [arr] with first [n] elements removed.

ChopLastN('a[],int)

Return a fresh copy of [arr] with last [n] elements removed.

Clone()

** Attention! It's inplace sort. */

ConvertAll(From[],Nemerle.Builtins.([From]) -> [To] )

Convert array of one type to other. (This is a alias for Map().)

Exists('a[],Nemerle.Builtins.(['a],[bool, mscorlib, Version=2.0.0.0, Culture=neutral) -> PublicKeyToken=b77a5c561934e089] )

Returns 'true' if at least one of the 'l' arrays's elements satisfies the condition 'f'.

Remark:

Example of use:

NArray.Exists (array ["a", "b", "abc", "d", "e"], fun (x) { x.Length > 2 })

evaluates to 'true' as there is one string of length 3 on the list.

Exists2('a[],Nemerle.Core.list`1[['b]],Nemerle.Builtins.(['a],['b],[bool, mscorlib, Version=2.0.0.0, Culture=neutral) -> PublicKeyToken=b77a5c561934e089] )
Exists2(Nemerle.Core.list`1[['a]],'b[],Nemerle.Builtins.(['a],['b],[bool, mscorlib, Version=2.0.0.0, Culture=neutral) -> PublicKeyToken=b77a5c561934e089] )
Filter(T[],Nemerle.Builtins.([T],[bool, mscorlib, Version=2.0.0.0, Culture=neutral) -> PublicKeyToken=b77a5c561934e089] )

Filter elements to list.

Fold('b[],,Nemerle.Builtins.(['b],['a]) -> ['a] )

Folds a function over an array.

FoldI('b[],,Nemerle.Builtins.([int, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],['b],['a]) -> ['a] )

Folds a function over an array, passing the array index as an additional parameter to the folded function parameters.

FoldLeft2('a[],Nemerle.Core.list`1[['b]],,Nemerle.Builtins.(['a],['b],['c]) -> ['c] )
FoldLeft2(Nemerle.Core.list`1[['a]],'b[],,Nemerle.Builtins.(['a],['b],['c]) -> ['c] )
FoldRight2('a[],Nemerle.Core.list`1[['b]],,Nemerle.Builtins.(['a],['b],['c]) -> ['c] )
FoldRight2(Nemerle.Core.list`1[['a]],'b[],,Nemerle.Builtins.(['a],['b],['c]) -> ['c] )
ForAll('a[],Nemerle.Builtins.(['a],[bool, mscorlib, Version=2.0.0.0, Culture=neutral) -> PublicKeyToken=b77a5c561934e089] )

Returns 'true' if exactly all of the 'l' arrays's elements satisfy the condition 'f'.

Remark:

Example of use:

NArray.ForAll (array [2, 4, 6, 8, 10], fun (x) { x % 2 == 0 })

evaluates to 'true' as all the array's elements are even integers.

ForAll2('a[],Nemerle.Core.list`1[['b]],Nemerle.Builtins.(['a],['b],[bool, mscorlib, Version=2.0.0.0, Culture=neutral) -> PublicKeyToken=b77a5c561934e089] )
ForAll2(Nemerle.Core.list`1[['a]],'b[],Nemerle.Builtins.(['a],['b],[bool, mscorlib, Version=2.0.0.0, Culture=neutral) -> PublicKeyToken=b77a5c561934e089] )
FromList(System.Type,Nemerle.Core.list`1[['a]])
Iter('a[],(['a]) -> void)

Iterates a function over an array.

Iter2('a[],Nemerle.Core.list`1[['b]],(['a],['b]) -> void)
Iter2(Nemerle.Core.list`1[['a]],'b[],(['a],['b]) -> void)
IterI('a[],([int, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],['a]) -> void)

Iterates a function over an array, passing both the array index and value as the iterated function parameters.

Map(From[],Nemerle.Builtins.([From]) -> [To] )
Map(System.Type,From[],Nemerle.Builtins.([From]) -> [To] )
Map2('a[],Nemerle.Core.list`1[['b]],Nemerle.Builtins.(['a],['b]) -> ['c] )
Map2(Nemerle.Core.list`1[['a]],'b[],Nemerle.Builtins.(['a],['b]) -> ['c] )
RevMap2('a[],Nemerle.Core.list`1[['b]],Nemerle.Builtins.(['a],['b]) -> ['c] )
RevMap2(Nemerle.Core.list`1[['a]],'b[],Nemerle.Builtins.(['a],['b]) -> ['c] )
SortInplace(T[],System.Comparison`1[[T]])

Attention! It's inplace sort.

ToBase(Derive[])

Cast array to covariant subtype.

ToList('a[])
ToString('a[],string)

Convert array to string.

Types:
sealed nested public class _N__N_l13534_13541`1['a]
Methods:
.ctor
apply
sealed nested public class _N_closure13217`3
sealed nested public class _N_closure13248`3
sealed nested public class _N_closure13347`3
sealed nested public class _N_closure13380`3
sealed abstract class public NCollectionsUtils
Methods:
BinarySearch(System.Collections.Generic.IList`1[[TElem]],Nemerle.Builtins.([TElem],[int, mscorlib, Version=2.0.0.0, Culture=neutral) -> PublicKeyToken=b77a5c561934e089] )
BinarySearch(System.Collections.Generic.IList`1[[TElem]],int,int,Nemerle.Builtins.([TElem],[int, mscorlib, Version=2.0.0.0, Culture=neutral) -> PublicKeyToken=b77a5c561934e089] )
ConvertToArray(System.Collections.Generic.ICollection`1[[From]],Nemerle.Builtins.([From]) -> [To] )

Convert collection of one type to array of another type. (Alias for MapToArray)

ConvertToArray(System.Collections.Generic.IEnumerable`1[[From]],Nemerle.Builtins.([From]) -> [To] )

Convert sequence of one type to array of another type. (Alias for MapToArray)

ConvertToArrayFiltered(System.Collections.Generic.IEnumerable`1[[From]],Nemerle.Builtins.Function`2[[From],[bool, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],Nemerle.Builtins.([From]) -> [To] )
Filter(System.Collections.Generic.IEnumerable`1[[T]],Nemerle.Builtins.([T],[bool, mscorlib, Version=2.0.0.0, Culture=neutral) -> PublicKeyToken=b77a5c561934e089] )
Fold(System.Collections.Generic.IEnumerable`1[[B]],,Nemerle.Builtins.([B],[A]) -> [A] )
FoldLeft(System.Collections.Generic.IEnumerable`1[[B]],,Nemerle.Builtins.([B],[A]) -> [A] )
FoldRight(System.Collections.Generic.IEnumerable`1[[B]],,Nemerle.Builtins.([B],[A]) -> [A] )
Map(System.Collections.Generic.IEnumerable`1[[From]],Nemerle.Builtins.([From]) -> [To] )
MapCollectionToArray(System.Collections.Generic.ICollection`1[[From]],Nemerle.Builtins.([From]) -> [To] )
MapToArray(System.Collections.Generic.ICollection`1[[From]],Nemerle.Builtins.([From]) -> [To] )

Convert a collection of one type to an array of another type.

MapToArray(System.Collections.Generic.IEnumerable`1[[From]],Nemerle.Builtins.([From]) -> [To] )

Convert a sequence of one type to an array of another type.

MapToArrayFiltered(System.Collections.Generic.IEnumerable`1[[From]],Nemerle.Builtins.Function`2[[From],[bool, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]],Nemerle.Builtins.([From]) -> [To] )

Convert sequence to array with filtration.

MapToList(From[],Nemerle.Builtins.([From]) -> [To] )
MapToList(System.Collections.Generic.IEnumerable`1[[From]],Nemerle.Builtins.([From]) -> [To] )
MapToList(System.Collections.Generic.IList`1[[From]],Nemerle.Builtins.([From]) -> [To] )
ToArray(System.Collections.Generic.ICollection`1[[T]])

Convert collection to array.

ToArray(System.Collections.Generic.IEnumerable`1[[T]])

Convert sequence to array.

ToArrayFiltered(System.Collections.Generic.IEnumerable`1[[T]],Nemerle.Builtins.([T],[bool, mscorlib, Version=2.0.0.0, Culture=neutral) -> PublicKeyToken=b77a5c561934e089] )

Convert sequence to array with filtration.

sealed abstract class public NString
Methods:
Concat(string,Nemerle.Core.list`1[[string, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]])

Concatenates strings from the list, inserting given separator between them.

Exists(string,Nemerle.Builtins.([System.Char, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[bool, mscorlib, Version=2.0.0.0, Culture=neutral) -> PublicKeyToken=b77a5c561934e089] )

Return [true] if [f] is returns [true] for any of the characters in the string [s].

Explode(string)

Changes string into a corresponding list of characters.

Remark:

Warning: this should not be used in performance critical parts of the program, because of list's memory overheads.

Fold(string,,Nemerle.Builtins.([System.Char, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],['a]) -> ['a] )
Fold2(string,string,,Nemerle.Builtins.([System.Char, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.Char, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],['a]) -> ['a] )
ForAll(string,Nemerle.Builtins.([System.Char, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[bool, mscorlib, Version=2.0.0.0, Culture=neutral) -> PublicKeyToken=b77a5c561934e089] )

Return [true] if [f] is returns [true] for all of the characters in the string [s].

Implode(Nemerle.Core.list`1[[System.Char, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]])

Constructs a string out of a list of characters.

Remark:

Warning: this should not be used in performance critical parts of the program, because of list's memory overheads.

Iter(string,([System.Char, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)

Call [f] for all characters in [s] in turn.

IterI(string,([System.Char, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[int, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]) -> void)

Call [f] for all characters in [s] in turn, passing the current index as the additional paramter.

Map(string,Nemerle.Builtins.([System.Char, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.Char, mscorlib, Version=2.0.0.0, Culture=neutral) -> PublicKeyToken=b77a5c561934e089] )

Same as [Implode (List.Map (Explode (s), f))] but a lot faster.

MapCS(string,Nemerle.Builtins.([System.Char, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[string, mscorlib, Version=2.0.0.0, Culture=neutral) -> PublicKeyToken=b77a5c561934e089] )

Same as [Concat ("", List.Map (Explode (s), f))] but a lot faster.

SeparatedCalls(string,Nemerle.Core.list`1[['a]],(['a]) -> void,System.Text.StringBuilder)

Calls the given function on elements of given list, appending given separator to string builder between those calls.

Remark:

NOTE: the `f' function should be taking `acc' as a parameter, so that this function looks more Fold-like.

Split(string,Nemerle.Core.list`1[[System.Char, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]])

Splits the string at positions of occurrence of one of the characters from the given list.

Split(string,System.Char[])

Splits the string at positions of occurrence of one of the characters from the given array.

sealed abstract class public Pair

Special methods for handling pairs (two-element tuples)

Methods:
First(,)

Returns the first element of a pair

Second(,)

Returns the second element of a pair

Swap(,)

Swaps the elements of a pair, creating a new pair.