v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::wasm::ValueTypeBase Class Reference

#include <value-type.h>

Inheritance diagram for v8::internal::wasm::ValueTypeBase:
Collaboration diagram for v8::internal::wasm::ValueTypeBase:

Public Member Functions

constexpr ValueTypeBase ()
 
void Populate (bool shared, RefTypeKind kind)
 
constexpr TypeKind type_kind () const
 
constexpr bool has_index () const
 
constexpr bool is_sentinel () const
 
constexpr bool is_numeric () const
 
constexpr bool is_abstract_ref () const
 
constexpr bool is_ref () const
 
constexpr bool is_generic () const
 
constexpr Nullability nullability () const
 
constexpr bool is_nullable () const
 
constexpr bool is_non_nullable () const
 
constexpr Exactness exactness () const
 
constexpr bool is_exact () const
 
constexpr bool is_shared () const
 
constexpr RefTypeKind ref_type_kind () const
 
constexpr StandardType standard_type () const
 
constexpr NumericKind numeric_kind () const
 
constexpr GenericKind generic_kind () const
 
constexpr bool is_bottom () const
 
constexpr bool is_top () const
 
constexpr bool is_void () const
 
constexpr bool is_string_view () const
 
constexpr bool is_packed () const
 
constexpr bool is_reference_to (GenericKind type) const
 
constexpr bool is_defaultable () const
 
constexpr bool is_uninhabited () const
 
constexpr bool use_wasm_null () const
 
constexpr int value_kind_size_log2 () const
 
constexpr int value_kind_size () const
 
constexpr int value_kind_full_size () const
 
constexpr MachineType machine_type () const
 
constexpr MachineRepresentation machine_representation () const
 
ValueTypeCode value_type_code () const
 
constexpr bool encoding_needs_heap_type () const
 
constexpr bool encoding_needs_shared () const
 
constexpr bool encoding_needs_exact () const
 
V8_EXPORT_PRIVATE ValueTypeCode value_type_code_numeric () const
 
V8_EXPORT_PRIVATE ValueTypeCode value_type_code_generic () const
 
constexpr char short_name () const
 
V8_EXPORT_PRIVATE std::string generic_heaptype_name () const
 
V8_EXPORT_PRIVATE std::string name () const
 
constexpr bool is_valid () const
 
constexpr uint32_t raw_bit_field () const
 
size_t hash_value () const
 
constexpr bool is_reference () const
 
constexpr bool is_object_reference () const
 
constexpr ValueKind kind () const
 
constexpr uint32_t raw_heap_representation (bool distinguish_shared) const
 

Static Public Member Functions

static constexpr ValueTypeBase Primitive (ValueKind kind)
 

Static Public Attributes

static const int kNumIndexBits = value_type_impl::PayloadField::kSize
 
static const int kLastUsedBit = value_type_impl::PayloadField::kLastUsedBit
 
static const uint32_t kIsRefBit = value_type_impl::IsRefField::kMask
 
static const uint32_t kIsNullableBit
 
static const uint32_t kHasIndexBit
 
static const uint32_t kRefKindBits = value_type_impl::RefTypeKindField::kMask
 
static const uint32_t kRefKindShift
 
static const uint32_t kIndexBits = value_type_impl::PayloadField::kMask
 
static const uint32_t kIndexShift = value_type_impl::PayloadField::kShift
 

Protected Member Functions

constexpr ValueTypeBase (uint32_t bit_field)
 
constexpr ValueTypeBase (NumericKind kind)
 
constexpr ValueTypeBase (GenericKind kind, Nullability nullable, bool is_shared)
 
constexpr ValueTypeBase (TypeIndex index, Nullability nullable, Exactness exact, bool shared, RefTypeKind ref_type_kind)
 
constexpr TypeIndex raw_index () const
 

Protected Attributes

uint32_t bit_field_
 

Friends

class CanonicalValueType
 
class HeapType
 
class IndependentValueType
 
class ValueType
 

Detailed Description

Definition at line 337 of file value-type.h.

Constructor & Destructor Documentation

◆ ValueTypeBase() [1/5]

v8::internal::wasm::ValueTypeBase::ValueTypeBase ( )
inlineconstexpr

Definition at line 352 of file value-type.h.

Here is the caller graph for this function:

◆ ValueTypeBase() [2/5]

v8::internal::wasm::ValueTypeBase::ValueTypeBase ( uint32_t bit_field)
inlineexplicitconstexprprotected

Definition at line 667 of file value-type.h.

Here is the call graph for this function:

◆ ValueTypeBase() [3/5]

v8::internal::wasm::ValueTypeBase::ValueTypeBase ( NumericKind kind)
inlineexplicitconstexprprotected

Definition at line 671 of file value-type.h.

Here is the call graph for this function:

◆ ValueTypeBase() [4/5]

v8::internal::wasm::ValueTypeBase::ValueTypeBase ( GenericKind kind,
Nullability nullable,
bool is_shared )
inlineexplicitconstexprprotected

Definition at line 676 of file value-type.h.

Here is the call graph for this function:

◆ ValueTypeBase() [5/5]

v8::internal::wasm::ValueTypeBase::ValueTypeBase ( TypeIndex index,
Nullability nullable,
Exactness exact,
bool shared,
RefTypeKind ref_type_kind )
inlineexplicitconstexprprotected

Definition at line 684 of file value-type.h.

Here is the call graph for this function:

Member Function Documentation

◆ encoding_needs_exact()

bool v8::internal::wasm::ValueTypeBase::encoding_needs_exact ( ) const
inlineconstexpr

Definition at line 548 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ encoding_needs_heap_type()

bool v8::internal::wasm::ValueTypeBase::encoding_needs_heap_type ( ) const
inlineconstexpr

Definition at line 538 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ encoding_needs_shared()

bool v8::internal::wasm::ValueTypeBase::encoding_needs_shared ( ) const
inlineconstexpr

Definition at line 544 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ exactness()

Exactness v8::internal::wasm::ValueTypeBase::exactness ( ) const
inlineconstexpr

Definition at line 399 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ generic_heaptype_name()

std::string v8::internal::wasm::ValueTypeBase::generic_heaptype_name ( ) const

Definition at line 76 of file value-type.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ generic_kind()

GenericKind v8::internal::wasm::ValueTypeBase::generic_kind ( ) const
inlineconstexpr

Definition at line 420 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ has_index()

bool v8::internal::wasm::ValueTypeBase::has_index ( ) const
inlineconstexpr

Definition at line 367 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hash_value()

size_t v8::internal::wasm::ValueTypeBase::hash_value ( ) const
inline

Definition at line 596 of file value-type.h.

◆ is_abstract_ref()

bool v8::internal::wasm::ValueTypeBase::is_abstract_ref ( ) const
inlineconstexpr

Definition at line 376 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_bottom()

bool v8::internal::wasm::ValueTypeBase::is_bottom ( ) const
inlineconstexpr

Definition at line 426 of file value-type.h.

Here is the caller graph for this function:

◆ is_defaultable()

bool v8::internal::wasm::ValueTypeBase::is_defaultable ( ) const
inlineconstexpr

Definition at line 452 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_exact()

bool v8::internal::wasm::ValueTypeBase::is_exact ( ) const
inlineconstexpr

Definition at line 402 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_generic()

bool v8::internal::wasm::ValueTypeBase::is_generic ( ) const
inlineconstexpr

Definition at line 384 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_non_nullable()

bool v8::internal::wasm::ValueTypeBase::is_non_nullable ( ) const
inlineconstexpr

Definition at line 396 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_nullable()

bool v8::internal::wasm::ValueTypeBase::is_nullable ( ) const
inlineconstexpr

Definition at line 393 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_numeric()

bool v8::internal::wasm::ValueTypeBase::is_numeric ( ) const
inlineconstexpr

Definition at line 373 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_object_reference()

bool v8::internal::wasm::ValueTypeBase::is_object_reference ( ) const
inlineconstexpr

Definition at line 601 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_packed()

bool v8::internal::wasm::ValueTypeBase::is_packed ( ) const
inlineconstexpr

Definition at line 444 of file value-type.h.

Here is the caller graph for this function:

◆ is_ref()

bool v8::internal::wasm::ValueTypeBase::is_ref ( ) const
inlineconstexpr

Definition at line 380 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_reference()

bool v8::internal::wasm::ValueTypeBase::is_reference ( ) const
inlineconstexpr

Definition at line 600 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_reference_to()

bool v8::internal::wasm::ValueTypeBase::is_reference_to ( GenericKind type) const
inlineconstexpr

Definition at line 449 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_sentinel()

bool v8::internal::wasm::ValueTypeBase::is_sentinel ( ) const
inlineconstexpr

Definition at line 370 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_shared()

bool v8::internal::wasm::ValueTypeBase::is_shared ( ) const
inlineconstexpr

Definition at line 403 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_string_view()

bool v8::internal::wasm::ValueTypeBase::is_string_view ( ) const
inlineconstexpr

Definition at line 438 of file value-type.h.

Here is the caller graph for this function:

◆ is_top()

bool v8::internal::wasm::ValueTypeBase::is_top ( ) const
inlineconstexpr

Definition at line 430 of file value-type.h.

Here is the caller graph for this function:

◆ is_uninhabited()

bool v8::internal::wasm::ValueTypeBase::is_uninhabited ( ) const
inlineconstexpr

Definition at line 455 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_valid()

bool v8::internal::wasm::ValueTypeBase::is_valid ( ) const
inlineconstexpr

Definition at line 573 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_void()

bool v8::internal::wasm::ValueTypeBase::is_void ( ) const
inlineconstexpr

Definition at line 434 of file value-type.h.

Here is the caller graph for this function:

◆ kind()

ValueKind v8::internal::wasm::ValueTypeBase::kind ( ) const
inlineconstexpr

Definition at line 631 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ machine_representation()

MachineRepresentation v8::internal::wasm::ValueTypeBase::machine_representation ( ) const
inlineconstexpr

Definition at line 520 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ machine_type()

MachineType v8::internal::wasm::ValueTypeBase::machine_type ( ) const
inlineconstexpr

Definition at line 506 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ name()

std::string v8::internal::wasm::ValueTypeBase::name ( ) const

Definition at line 121 of file value-type.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nullability()

Nullability v8::internal::wasm::ValueTypeBase::nullability ( ) const
inlineconstexpr

Definition at line 389 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ numeric_kind()

NumericKind v8::internal::wasm::ValueTypeBase::numeric_kind ( ) const
inlineconstexpr

Definition at line 415 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Populate()

void v8::internal::wasm::ValueTypeBase::Populate ( bool shared,
RefTypeKind kind )
inline

Definition at line 359 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Primitive()

static constexpr ValueTypeBase v8::internal::wasm::ValueTypeBase::Primitive ( ValueKind kind)
inlinestaticconstexpr

Definition at line 603 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ raw_bit_field()

uint32_t v8::internal::wasm::ValueTypeBase::raw_bit_field ( ) const
inlineconstexpr

Definition at line 594 of file value-type.h.

Here is the caller graph for this function:

◆ raw_heap_representation()

uint32_t v8::internal::wasm::ValueTypeBase::raw_heap_representation ( bool distinguish_shared) const
constexpr

Definition at line 850 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ raw_index()

TypeIndex v8::internal::wasm::ValueTypeBase::raw_index ( ) const
inlineconstexprprotected

Definition at line 699 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ref_type_kind()

RefTypeKind v8::internal::wasm::ValueTypeBase::ref_type_kind ( ) const
inlineconstexpr

Definition at line 406 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ short_name()

char v8::internal::wasm::ValueTypeBase::short_name ( ) const
inlineconstexpr

Definition at line 556 of file value-type.h.

Here is the call graph for this function:

◆ standard_type()

StandardType v8::internal::wasm::ValueTypeBase::standard_type ( ) const
inlineconstexpr

Definition at line 410 of file value-type.h.

Here is the call graph for this function:

◆ type_kind()

TypeKind v8::internal::wasm::ValueTypeBase::type_kind ( ) const
inlineconstexpr

Definition at line 364 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ use_wasm_null()

bool v8::internal::wasm::ValueTypeBase::use_wasm_null ( ) const
inlineconstexpr

Definition at line 462 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ value_kind_full_size()

int v8::internal::wasm::ValueTypeBase::value_kind_full_size ( ) const
inlineconstexpr

Definition at line 497 of file value-type.h.

Here is the call graph for this function:

◆ value_kind_size()

int v8::internal::wasm::ValueTypeBase::value_kind_size ( ) const
inlineconstexpr

Definition at line 485 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ value_kind_size_log2()

int v8::internal::wasm::ValueTypeBase::value_kind_size_log2 ( ) const
inlineconstexpr

Definition at line 473 of file value-type.h.

Here is the call graph for this function:

◆ value_type_code()

ValueTypeCode v8::internal::wasm::ValueTypeBase::value_type_code ( ) const
inline

Definition at line 527 of file value-type.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ value_type_code_generic()

ValueTypeCode v8::internal::wasm::ValueTypeBase::value_type_code_generic ( ) const

Definition at line 55 of file value-type.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ value_type_code_numeric()

ValueTypeCode v8::internal::wasm::ValueTypeBase::value_type_code_numeric ( ) const

Definition at line 44 of file value-type.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ CanonicalValueType

friend class CanonicalValueType
friend

Definition at line 662 of file value-type.h.

◆ HeapType

friend class HeapType
friend

Definition at line 663 of file value-type.h.

◆ IndependentValueType

friend class IndependentValueType
friend

Definition at line 664 of file value-type.h.

◆ ValueType

friend class ValueType
friend

Definition at line 665 of file value-type.h.

Member Data Documentation

◆ bit_field_

uint32_t v8::internal::wasm::ValueTypeBase::bit_field_
protected

Definition at line 704 of file value-type.h.

◆ kHasIndexBit

const uint32_t v8::internal::wasm::ValueTypeBase::kHasIndexBit
static
Initial value:

Definition at line 344 of file value-type.h.

◆ kIndexBits

const uint32_t v8::internal::wasm::ValueTypeBase::kIndexBits = value_type_impl::PayloadField::kMask
static

Definition at line 349 of file value-type.h.

◆ kIndexShift

const uint32_t v8::internal::wasm::ValueTypeBase::kIndexShift = value_type_impl::PayloadField::kShift
static

Definition at line 350 of file value-type.h.

◆ kIsNullableBit

const uint32_t v8::internal::wasm::ValueTypeBase::kIsNullableBit
static
Initial value:

Definition at line 342 of file value-type.h.

◆ kIsRefBit

const uint32_t v8::internal::wasm::ValueTypeBase::kIsRefBit = value_type_impl::IsRefField::kMask
static

Definition at line 341 of file value-type.h.

◆ kLastUsedBit

const int v8::internal::wasm::ValueTypeBase::kLastUsedBit = value_type_impl::PayloadField::kLastUsedBit
static

Definition at line 340 of file value-type.h.

◆ kNumIndexBits

const int v8::internal::wasm::ValueTypeBase::kNumIndexBits = value_type_impl::PayloadField::kSize
static

Definition at line 339 of file value-type.h.

◆ kRefKindBits

const uint32_t v8::internal::wasm::ValueTypeBase::kRefKindBits = value_type_impl::RefTypeKindField::kMask
static

Definition at line 346 of file value-type.h.

◆ kRefKindShift

const uint32_t v8::internal::wasm::ValueTypeBase::kRefKindShift
static
Initial value:

Definition at line 347 of file value-type.h.


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