C# Class Jurassic.TypeComparer

Implements the JavaScript equality and comparison rules.
Show file Open project: paulbartrum/jurassic

Public Methods

Method Description
Equals ( object x, object y ) : bool

Compares two objects for equality. Used by the equality operator (==).

GreaterThan ( object x, object y ) : bool

Determines the ordering of two objects. Used by the greater than operator (>).

GreaterThanOrEqual ( object x, object y ) : bool

Determines the ordering of two objects. Used by the greater than or equal operator (>=).

LessThan ( object x, object y ) : bool

Determines the ordering of two objects. Used by the less than operator (<).

LessThanOrEqual ( object x, object y ) : bool

Determines the ordering of two objects. Used by the less than or equal operator (<=).

SameValue ( object x, object y ) : bool

Implements the SameValue algorithm.

With this algorithm: 1. NaN is considered equal to NaN. 2. +0 and -0 are considered to be different.

SameValueZero ( object x, object y ) : bool

Implements the SameValueZero algorithm.

With this algorithm: 1. NaN is considered equal to NaN. 2. +0 and -0 are considered to be equal.

StrictEquals ( object x, object y ) : bool

Compares two objects for equality. Used by the strict equality operator (===).

With this algorithm: 1. NaN is not considered equal to NaN. 2. +0 and -0 are considered to be equal.

Method Details

Equals() public static method

Compares two objects for equality. Used by the equality operator (==).
public static Equals ( object x, object y ) : bool
x object The first object to compare.
y object The first object to compare.
return bool

GreaterThan() public static method

Determines the ordering of two objects. Used by the greater than operator (>).
public static GreaterThan ( object x, object y ) : bool
x object The first object to compare.
y object The second object to compare.
return bool

GreaterThanOrEqual() public static method

Determines the ordering of two objects. Used by the greater than or equal operator (>=).
public static GreaterThanOrEqual ( object x, object y ) : bool
x object The first object to compare.
y object The second object to compare.
return bool

LessThan() public static method

Determines the ordering of two objects. Used by the less than operator (<).
public static LessThan ( object x, object y ) : bool
x object The first object to compare.
y object The second object to compare.
return bool

LessThanOrEqual() public static method

Determines the ordering of two objects. Used by the less than or equal operator (<=).
public static LessThanOrEqual ( object x, object y ) : bool
x object The first object to compare.
y object The second object to compare.
return bool

SameValue() public static method

Implements the SameValue algorithm.
With this algorithm: 1. NaN is considered equal to NaN. 2. +0 and -0 are considered to be different.
public static SameValue ( object x, object y ) : bool
x object The first object to compare.
y object The second object to compare.
return bool

SameValueZero() public static method

Implements the SameValueZero algorithm.
With this algorithm: 1. NaN is considered equal to NaN. 2. +0 and -0 are considered to be equal.
public static SameValueZero ( object x, object y ) : bool
x object The first object to compare.
y object The second object to compare.
return bool

StrictEquals() public static method

Compares two objects for equality. Used by the strict equality operator (===).
With this algorithm: 1. NaN is not considered equal to NaN. 2. +0 and -0 are considered to be equal.
public static StrictEquals ( object x, object y ) : bool
x object The first object to compare.
y object The second object to compare.
return bool