Public Member Functions | Static Public Member Functions | List of all members
v8::BigInt Class Reference

#include <v8.h>

Inheritance diagram for v8::BigInt:
[legend]
Collaboration diagram for v8::BigInt:
[legend]

Public Member Functions

uint64_t Uint64Value (bool *lossless=nullptr) const
 
int64_t Int64Value (bool *lossless=nullptr) const
 
int WordCount () const
 
void ToWordsArray (int *sign_bit, int *word_count, uint64_t *words) const
 
- Public Member Functions inherited from v8::Value
bool IsUndefined () const
 
bool IsNull () const
 
bool IsNullOrUndefined () const
 
bool IsTrue () const
 
bool IsFalse () const
 
bool IsName () const
 
bool IsString () const
 
bool IsSymbol () const
 
bool IsFunction () const
 
bool IsArray () const
 
bool IsObject () const
 
bool IsBigInt () const
 
bool IsBoolean () const
 
bool IsNumber () const
 
bool IsExternal () const
 
bool IsInt32 () const
 
bool IsUint32 () const
 
bool IsDate () const
 
bool IsArgumentsObject () const
 
bool IsBigIntObject () const
 
bool IsBooleanObject () const
 
bool IsNumberObject () const
 
bool IsStringObject () const
 
bool IsSymbolObject () const
 
bool IsNativeError () const
 
bool IsRegExp () const
 
bool IsAsyncFunction () const
 
bool IsGeneratorFunction () const
 
bool IsGeneratorObject () const
 
bool IsPromise () const
 
bool IsMap () const
 
bool IsSet () const
 
bool IsMapIterator () const
 
bool IsSetIterator () const
 
bool IsWeakMap () const
 
bool IsWeakSet () const
 
bool IsArrayBuffer () const
 
bool IsArrayBufferView () const
 
bool IsTypedArray () const
 
bool IsUint8Array () const
 
bool IsUint8ClampedArray () const
 
bool IsInt8Array () const
 
bool IsUint16Array () const
 
bool IsInt16Array () const
 
bool IsUint32Array () const
 
bool IsInt32Array () const
 
bool IsFloat32Array () const
 
bool IsFloat64Array () const
 
bool IsBigInt64Array () const
 
bool IsBigUint64Array () const
 
bool IsDataView () const
 
bool IsSharedArrayBuffer () const
 
bool IsProxy () const
 
bool IsWasmMemoryObject () const
 
bool IsWasmModuleObject () const
 
bool IsModuleNamespaceObject () const
 
MaybeLocal< BigIntToBigInt (Local< Context > context) const
 
MaybeLocal< NumberToNumber (Local< Context > context) const
 
MaybeLocal< StringToString (Local< Context > context) const
 
MaybeLocal< StringToDetailString (Local< Context > context) const
 
MaybeLocal< ObjectToObject (Local< Context > context) const
 
MaybeLocal< IntegerToInteger (Local< Context > context) const
 
MaybeLocal< Uint32ToUint32 (Local< Context > context) const
 
MaybeLocal< Int32ToInt32 (Local< Context > context) const
 
Local< BooleanToBoolean (Isolate *isolate) const
 
MaybeLocal< Uint32ToArrayIndex (Local< Context > context) const
 
bool BooleanValue (Isolate *isolate) const
 
Maybe< double > NumberValue (Local< Context > context) const
 
Maybe< int64_t > IntegerValue (Local< Context > context) const
 
Maybe< uint32_t > Uint32Value (Local< Context > context) const
 
Maybe< int32_t > Int32Value (Local< Context > context) const
 
Maybe< bool > Equals (Local< Context > context, Local< Value > that) const
 
bool StrictEquals (Local< Value > that) const
 
bool SameValue (Local< Value > that) const
 
Local< StringTypeOf (Isolate *)
 
Maybe< bool > InstanceOf (Local< Context > context, Local< Object > object)
 
template<>
ValueCast (Data *value)
 
- Public Member Functions inherited from v8::Data
bool IsValue () const
 
bool IsModule () const
 
bool IsPrivate () const
 
bool IsObjectTemplate () const
 
bool IsFunctionTemplate () const
 
bool IsContext () const
 

Static Public Member Functions

static Local< BigIntNew (Isolate *isolate, int64_t value)
 
static Local< BigIntNewFromUnsigned (Isolate *isolate, uint64_t value)
 
static MaybeLocal< BigIntNewFromWords (Local< Context > context, int sign_bit, int word_count, const uint64_t *words)
 
static BigIntCast (v8::Data *data)
 
- Static Public Member Functions inherited from v8::Value
template<class T >
static ValueCast (T *value)
 

Detailed Description

A JavaScript BigInt value (https://tc39.github.io/proposal-bigint)

Member Function Documentation

◆ Cast()

BigInt * v8::BigInt::Cast ( v8::Data data)
inlinestatic

◆ Int64Value()

int64_t v8::BigInt::Int64Value ( bool *  lossless = nullptr) const

Returns the value of this BigInt as a signed 64-bit integer. If lossless is provided, it will reflect whether this BigInt was truncated or not.

◆ New()

static Local<BigInt> v8::BigInt::New ( Isolate isolate,
int64_t  value 
)
static

◆ NewFromUnsigned()

static Local<BigInt> v8::BigInt::NewFromUnsigned ( Isolate isolate,
uint64_t  value 
)
static

◆ NewFromWords()

static MaybeLocal<BigInt> v8::BigInt::NewFromWords ( Local< Context context,
int  sign_bit,
int  word_count,
const uint64_t *  words 
)
static

Creates a new BigInt object using a specified sign bit and a specified list of digits/words. The resulting number is calculated as:

(-1)^sign_bit * (words[0] * (2^64)^0 + words[1] * (2^64)^1 + ...)

◆ ToWordsArray()

void v8::BigInt::ToWordsArray ( int *  sign_bit,
int *  word_count,
uint64_t *  words 
) const

Writes the contents of this BigInt to a specified memory location. sign_bit must be provided and will be set to 1 if this BigInt is negative. *word_count has to be initialized to the length of the words array. Upon return, it will be set to the actual number of words that would be needed to store this BigInt (i.e. the return value of WordCount()).

◆ Uint64Value()

uint64_t v8::BigInt::Uint64Value ( bool *  lossless = nullptr) const

Returns the value of this BigInt as an unsigned 64-bit integer. If lossless is provided, it will reflect whether the return value was truncated or wrapped around. In particular, it is set to false if this BigInt is negative.

◆ WordCount()

int v8::BigInt::WordCount ( ) const

Returns the number of 64-bit words needed to store the result of ToWordsArray().


The documentation for this class was generated from the following file: