ASN1C C# Runtime Library
7.8
|
Public Member Functions | |
BigInteger | Add (BigInteger op) |
BigInteger () | |
BigInteger (BigInteger x) | |
BigInteger (byte[] value, int sign) | |
BigInteger (System.String value) | |
BigInteger (System.Int64 value) | |
BigInteger (System.String value, int radix) | |
int | BitLength () |
virtual int | CompareTo (BigInteger value) |
void | DivideByInt (int divisor, out BigInteger quotient, out int remainder) |
virtual bool | Equals (long value) |
override bool | Equals (System.Object value) |
byte [] | GetData () |
override int | GetHashCode () |
void | Init (System.String val, int radix) |
bool | IsNegative () |
long | LongValue () |
BigInteger | Multiply (int factor) |
void | SecureDelete () |
void | SetData (byte[] ivalue) |
BigInteger | Subtract (BigInteger op) |
System.String | ToString (int radix) |
override System.String | ToString () |
Static Public Member Functions | |
static implicit | operator BigInteger (long value) |
This class represents an ASN.1 INTEGER built-in type. In this case, the values can be greater than 64 bits in size. This class is used in generated source code if the <bigInteger> qualifier is specified in a compiler configuration file.
BigInteger | ( | ) |
The default constructor sets the big integer value object reference to null.
BigInteger | ( | BigInteger | x | ) |
Construct a copy of the given BigInteger.
x |
BigInteger | ( | byte [] | value, |
int | sign | ||
) |
Create a new big integer object using the given binary representation for magnituded and sign.
value | minimal, big-endian, representation of the magnitude (unsigned) of the value. For zero, an empty array. |
sign | Can be -1 for negative, 0 for zero, or 1 for positive. |
BigInteger | ( | System.String | value | ) |
This constructor creates a new big integer object and sets it to the string value passed in. String value may contain the prefix that describes the radix: 0x - hexadecimal, 0o - octal, 0b - binary. The string value without prefix assumes decimal value. The optional sign '-' may be specified at the beginning of the string to specify the negative value.
value | String value |
BigInteger | ( | System.Int64 | value | ) |
This constructor creates a new big integer object and sets it to the int value passed in.
value | Integer value |
BigInteger | ( | System.String | value, |
int | radix | ||
) |
This constructor creates a new big integer object and sets it to the string value passed in. String value may contain the prefix that describes the radix: 0x - hexadecimal, 0o - octal, 0b - binary. The string value without prefix assumes decimal value. The optional sign '-' may be specified at the beginning of the string to specify the negative value.
value | String value |
radix | Can be 16 for hexadecimal, 8 for octal, 2 for binary or 10 for decimal |
BigInteger Add | ( | BigInteger | op | ) |
Return the result of adding op to this BigInteger. Does not modify this object.
op |
Referenced by Asn1BigInteger.Decode(), Asn1StringOID.Encode(), and Asn1BigInteger.Encode().
int BitLength | ( | ) |
Returns the number of bits in the minimal two's-complement representation of this BigInteger, excluding a sign bit. For positive BigIntegers, this is equivalent to the number of bits in the ordinary binary representation. (Computes (ceil(log2(this < 0 ? -this : this+1))).)
Referenced by Asn1BigInteger.Decode(), Asn1BigInteger.Encode(), Asn1BigInteger.EncodeSigned(), and Asn1BigInteger.EncodeUnsigned().
|
virtual |
This method compares this integer value to the given value.
value | The value to compare with the current object. |
Referenced by Asn1BigInteger.Decode(), Asn1StringOID.Encode(), Asn1BigInteger.Encode(), Asn1BigInteger.EncodeUnsigned(), Asn1StringOID.ToString(), and Asn1StringOID.Validate().
void DivideByInt | ( | int | divisor, |
out BigInteger | quotient, | ||
out int | remainder | ||
) |
Set quotient and remainder to the result of dividing this big integer by divisor.
divisor | |
quotient | |
remainder |
Referenced by Asn1DecodeBuffer.DecodeRelOIDContentsBig().
|
virtual |
This method compares this integer value to the given value for equality.
value | The long value to compare with the current Object. |
true
if the specified long value is equal to the current Object; otherwise, false
. Referenced by Asn1BigInteger.Decode(), Asn1BigInteger.Encode(), and Asn1BigInteger.Equals().
override bool Equals | ( | System.Object | value | ) |
This method compares this integer value to the given value for equality.
value | The Object to compare with the current Object. Object should be instance of BigInteger. |
true
if the specified Object is equal to the current Object; otherwise, false
. byte [] GetData | ( | ) |
This method provides the byte array representation of the integer value, in 2's complement form, using the minimal number of bytes (and at least 1 byte). The most significant byte is at index 0.
Referenced by Asn1BigInteger.DecodeValue(), Asn1BigInteger.Encode(), Asn1StringOID.EncodeIdentifier(), Asn1BigInteger.EncodeSigned(), Asn1BigInteger.EncodeUnsigned(), and Asn1BerEncodeBuffer.EncodeUnsignedBinaryNumber().
override int GetHashCode | ( | ) |
Serves as a hash function for a particular type, suitable for use in hashing algorithms and data structures like a hash table.
Referenced by Asn1BigInteger.GetHashCode().
void Init | ( | System.String | val, |
int | radix | ||
) |
Translates the String representation of a Integer in the specified radix into a BigInteger. The String representation consists of an optional minus sign followed by a sequence of one or more digits in the specified radix. The String may not contain any extraneous Characters (whitespace, for example).
val | String representation of Integer. |
radix | radix to be used in interpreting string value. |
System.FormatException | val is not a valid representation of a BigInteger in the specified radix, or invalid value of radix. |
References Asn1Util.URShift().
bool IsNegative | ( | ) |
This method checks the Integer value is negative.
true
if negative; otherwise false
Referenced by Asn1BerEncodeBuffer.EncodeUnsignedBinaryNumber().
long LongValue | ( | ) |
Converts this BigInteger to a long. This conversion is analogous to the conversion from long to int: if this BigInteger is too big to fit in a long, only the low-order 64 bits are returned. Note that this conversion can lose information about the overall magnitude of the BigInteger value as well as return a result with the opposite sign.
Referenced by Asn1BigInteger.Decode(), Asn1BigInteger.Encode(), Asn1BigInteger.EncodeSigned(), and Asn1BigInteger.EncodeUnsigned().
BigInteger Multiply | ( | int | factor | ) |
Return a BigInteger equal to this BigInteger multiplied by factor.
factor |
Referenced by Asn1StringOID.Encode(), and Asn1StringOID.ToString().
|
static |
Overloaded implicit conversion operator for long to BigInteger value
void SecureDelete | ( | ) |
This function clears the current value (by overwritting with zeros). Than sets the value to zero, and passes the old value to garbage collector.
void SetData | ( | byte [] | ivalue | ) |
This method sets the Integer value from byte array.
ivalue | byte array of the integer value |
Referenced by Asn1BigInteger.DecodeSigned(), Asn1BigInteger.DecodeUnsigned(), and Asn1BigInteger.DecodeValue().
BigInteger Subtract | ( | BigInteger | op | ) |
Subtract given op from this value and return the result. This object is not modified.
op |
Referenced by Asn1BigInteger.Decode(), Asn1DecodeBuffer.DecodeRelOIDContentsBig(), and Asn1BigInteger.Encode().
System.String ToString | ( | int | radix | ) |
Returns the String representation of this BigInteger in the given radix. If the radix is invalid, it will default to 10 (as is the case for Int32.ToString
). The a minus sign is prepended if appropriate. This method is compatible with BigInteger(String, int)
constructor.
radix | radix of the String representation. |
Referenced by Asn1BigInteger.Decode(), Asn1BigInteger.Encode(), and Asn1BigInteger.ToString().
override System.String ToString | ( | ) |
This method will return a string representation of the integer value. The format is the ASN.1 value format for this type..