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

#include <implementation-visitor.h>

Collaboration diagram for v8::internal::torque::LocationReference:

Public Member Functions

bool IsConst () const
 
bool IsVariableAccess () const
 
const VisitResultvariable () const
 
bool IsTemporary () const
 
const VisitResulttemporary () const
 
bool IsHeapReference () const
 
const VisitResultheap_reference () const
 
FieldSynchronization heap_reference_synchronization () const
 
bool IsHeapSlice () const
 
const VisitResultheap_slice () const
 
bool IsBitFieldAccess () const
 
const LocationReferencebit_field_struct_location () const
 
const BitFieldbit_field () const
 
std::optional< const Type * > ReferencedType () const
 
const VisitResultGetVisitResult () const
 
const std::string & temporary_description () const
 
bool IsCallAccess () const
 
const VisitResultVectorcall_arguments () const
 
const std::string & eval_function () const
 
const std::string & assign_function () const
 
std::optional< Binding< LocalValue > * > binding () const
 

Static Public Member Functions

static LocationReference VariableAccess (VisitResult variable, std::optional< Binding< LocalValue > * > binding=std::nullopt)
 
static LocationReference Temporary (VisitResult temporary, std::string description)
 
static LocationReference HeapReference (VisitResult heap_reference, FieldSynchronization synchronization=FieldSynchronization::kNone)
 
static LocationReference HeapSlice (VisitResult heap_slice)
 
static LocationReference ArrayAccess (VisitResult base, VisitResult offset)
 
static LocationReference FieldAccess (VisitResult object, std::string fieldname)
 
static LocationReference BitFieldAccess (const LocationReference &object, BitField field)
 

Private Member Functions

 LocationReference ()=default
 

Private Attributes

std::optional< VisitResultvariable_
 
std::optional< VisitResulttemporary_
 
std::optional< std::string > temporary_description_
 
std::optional< VisitResultheap_reference_
 
FieldSynchronization heap_reference_synchronization_
 
std::optional< VisitResultheap_slice_
 
std::optional< std::string > eval_function_
 
std::optional< std::string > assign_function_
 
VisitResultVector call_arguments_
 
std::optional< Binding< LocalValue > * > binding_
 
std::shared_ptr< const LocationReferencebit_field_struct_
 
std::optional< BitFieldbit_field_
 

Detailed Description

Definition at line 34 of file implementation-visitor.h.

Constructor & Destructor Documentation

◆ LocationReference()

v8::internal::torque::LocationReference::LocationReference ( )
privatedefault

Member Function Documentation

◆ ArrayAccess()

static LocationReference v8::internal::torque::LocationReference::ArrayAccess ( VisitResult base,
VisitResult offset )
inlinestatic

Definition at line 76 of file implementation-visitor.h.

◆ assign_function()

const std::string & v8::internal::torque::LocationReference::assign_function ( ) const
inline

Definition at line 196 of file implementation-visitor.h.

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

◆ binding()

std::optional< Binding< LocalValue > * > v8::internal::torque::LocationReference::binding ( ) const
inline

Definition at line 200 of file implementation-visitor.h.

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

◆ bit_field()

const BitField & v8::internal::torque::LocationReference::bit_field ( ) const
inline

Definition at line 144 of file implementation-visitor.h.

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

◆ bit_field_struct_location()

const LocationReference & v8::internal::torque::LocationReference::bit_field_struct_location ( ) const
inline

Definition at line 140 of file implementation-visitor.h.

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

◆ BitFieldAccess()

static LocationReference v8::internal::torque::LocationReference::BitFieldAccess ( const LocationReference & object,
BitField field )
inlinestatic

Definition at line 91 of file implementation-visitor.h.

◆ call_arguments()

const VisitResultVector & v8::internal::torque::LocationReference::call_arguments ( ) const
inline

Definition at line 188 of file implementation-visitor.h.

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

◆ eval_function()

const std::string & v8::internal::torque::LocationReference::eval_function ( ) const
inline

Definition at line 192 of file implementation-visitor.h.

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

◆ FieldAccess()

static LocationReference v8::internal::torque::LocationReference::FieldAccess ( VisitResult object,
std::string fieldname )
inlinestatic

Definition at line 83 of file implementation-visitor.h.

◆ GetVisitResult()

const VisitResult & v8::internal::torque::LocationReference::GetVisitResult ( ) const
inline

Definition at line 170 of file implementation-visitor.h.

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

◆ heap_reference()

const VisitResult & v8::internal::torque::LocationReference::heap_reference ( ) const
inline

Definition at line 122 of file implementation-visitor.h.

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

◆ heap_reference_synchronization()

FieldSynchronization v8::internal::torque::LocationReference::heap_reference_synchronization ( ) const
inline

Definition at line 126 of file implementation-visitor.h.

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

◆ heap_slice()

const VisitResult & v8::internal::torque::LocationReference::heap_slice ( ) const
inline

Definition at line 131 of file implementation-visitor.h.

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

◆ HeapReference()

static LocationReference v8::internal::torque::LocationReference::HeapReference ( VisitResult heap_reference,
FieldSynchronization synchronization = FieldSynchronization::kNone )
inlinestatic

Definition at line 56 of file implementation-visitor.h.

Here is the call graph for this function:

◆ HeapSlice()

static LocationReference v8::internal::torque::LocationReference::HeapSlice ( VisitResult heap_slice)
inlinestatic

Definition at line 67 of file implementation-visitor.h.

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

◆ IsBitFieldAccess()

bool v8::internal::torque::LocationReference::IsBitFieldAccess ( ) const
inline

Definition at line 135 of file implementation-visitor.h.

Here is the caller graph for this function:

◆ IsCallAccess()

bool v8::internal::torque::LocationReference::IsCallAccess ( ) const
inline

Definition at line 183 of file implementation-visitor.h.

Here is the caller graph for this function:

◆ IsConst()

bool v8::internal::torque::LocationReference::IsConst ( ) const
inline

Definition at line 99 of file implementation-visitor.h.

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

◆ IsHeapReference()

bool v8::internal::torque::LocationReference::IsHeapReference ( ) const
inline

Definition at line 121 of file implementation-visitor.h.

Here is the caller graph for this function:

◆ IsHeapSlice()

bool v8::internal::torque::LocationReference::IsHeapSlice ( ) const
inline

Definition at line 130 of file implementation-visitor.h.

Here is the caller graph for this function:

◆ IsTemporary()

bool v8::internal::torque::LocationReference::IsTemporary ( ) const
inline

Definition at line 116 of file implementation-visitor.h.

Here is the caller graph for this function:

◆ IsVariableAccess()

bool v8::internal::torque::LocationReference::IsVariableAccess ( ) const
inline

Definition at line 111 of file implementation-visitor.h.

Here is the caller graph for this function:

◆ ReferencedType()

std::optional< const Type * > v8::internal::torque::LocationReference::ReferencedType ( ) const
inline

Definition at line 149 of file implementation-visitor.h.

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

◆ Temporary()

static LocationReference v8::internal::torque::LocationReference::Temporary ( VisitResult temporary,
std::string description )
inlinestatic

Definition at line 47 of file implementation-visitor.h.

Here is the caller graph for this function:

◆ temporary()

const VisitResult & v8::internal::torque::LocationReference::temporary ( ) const
inline

Definition at line 117 of file implementation-visitor.h.

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

◆ temporary_description()

const std::string & v8::internal::torque::LocationReference::temporary_description ( ) const
inline

Definition at line 178 of file implementation-visitor.h.

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

◆ variable()

const VisitResult & v8::internal::torque::LocationReference::variable ( ) const
inline

Definition at line 112 of file implementation-visitor.h.

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

◆ VariableAccess()

static LocationReference v8::internal::torque::LocationReference::VariableAccess ( VisitResult variable,
std::optional< Binding< LocalValue > * > binding = std::nullopt )
inlinestatic

Definition at line 37 of file implementation-visitor.h.

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

Member Data Documentation

◆ assign_function_

std::optional<std::string> v8::internal::torque::LocationReference::assign_function_
private

Definition at line 214 of file implementation-visitor.h.

◆ binding_

std::optional<Binding<LocalValue>*> v8::internal::torque::LocationReference::binding_
private

Definition at line 216 of file implementation-visitor.h.

◆ bit_field_

std::optional<BitField> v8::internal::torque::LocationReference::bit_field_
private

Definition at line 223 of file implementation-visitor.h.

◆ bit_field_struct_

std::shared_ptr<const LocationReference> v8::internal::torque::LocationReference::bit_field_struct_
private

Definition at line 222 of file implementation-visitor.h.

◆ call_arguments_

VisitResultVector v8::internal::torque::LocationReference::call_arguments_
private

Definition at line 215 of file implementation-visitor.h.

◆ eval_function_

std::optional<std::string> v8::internal::torque::LocationReference::eval_function_
private

Definition at line 213 of file implementation-visitor.h.

◆ heap_reference_

std::optional<VisitResult> v8::internal::torque::LocationReference::heap_reference_
private

Definition at line 209 of file implementation-visitor.h.

◆ heap_reference_synchronization_

FieldSynchronization v8::internal::torque::LocationReference::heap_reference_synchronization_
private

◆ heap_slice_

std::optional<VisitResult> v8::internal::torque::LocationReference::heap_slice_
private

Definition at line 212 of file implementation-visitor.h.

◆ temporary_

std::optional<VisitResult> v8::internal::torque::LocationReference::temporary_
private

Definition at line 207 of file implementation-visitor.h.

◆ temporary_description_

std::optional<std::string> v8::internal::torque::LocationReference::temporary_description_
private

Definition at line 208 of file implementation-visitor.h.

◆ variable_

std::optional<VisitResult> v8::internal::torque::LocationReference::variable_
private

Definition at line 206 of file implementation-visitor.h.


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