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

#include <declarable.h>

Inheritance diagram for v8::internal::torque::Builtin:
Collaboration diagram for v8::internal::torque::Builtin:

Public Types

enum  Kind { kStub , kFixedArgsJavaScript , kVarArgsJavaScript }
 
enum class  Flag { kNone = 0 , kCustomInterfaceDescriptor = 1 << 0 }
 
using Flags = base::Flags<Flag>
 
- Public Types inherited from v8::internal::torque::Declarable
enum  Kind {
  kNamespace , kTorqueMacro , kExternMacro , kMethod ,
  kBuiltin , kRuntimeFunction , kIntrinsic , kGenericCallable ,
  kGenericType , kTypeAlias , kExternConstant , kNamespaceConstant
}
 

Public Member Functions

Kind kind () const
 
Flags flags () const
 
std::optional< std::string > use_counter_name () const
 
bool IsStub () const
 
bool IsVarArgsJavaScript () const
 
bool IsFixedArgsJavaScript () const
 
bool IsJavaScript () const
 
bool HasCustomInterfaceDescriptor () const
 
- Public Member Functions inherited from v8::internal::torque::Callable
const std::string & ExternalName () const
 
const std::string & ReadableName () const
 
const Signaturesignature () const
 
bool IsTransitioning () const
 
const NameVectorparameter_names () const
 
bool HasReturnValue () const
 
void IncrementReturns ()
 
bool HasReturns () const
 
std::optional< Statement * > body () const
 
bool IsExternal () const
 
virtual bool ShouldBeInlined (OutputType output_type) const
 
bool ShouldGenerateExternalCode (OutputType output_type) const
 
virtual std::string CCName () const
 
virtual std::string CCDebugName () const
 
- Public Member Functions inherited from v8::internal::torque::Scope
 Scope (Declarable::Kind kind)
 
std::vector< Declarable * > LookupShallow (const QualifiedName &name)
 
std::vector< Declarable * > Lookup (const QualifiedName &name)
 
template<class T >
TAddDeclarable (const std::string &name, T *declarable)
 
const SpecializationRequesterGetSpecializationRequester () const
 
void SetSpecializationRequester (const SpecializationRequester &requester)
 
- Public Member Functions inherited from v8::internal::torque::Declarable
virtual ~Declarable ()=default
 
Kind kind () const
 
bool IsNamespace () const
 
bool IsMacro () const
 
bool IsTorqueMacro () const
 
bool IsMethod () const
 
bool IsExternMacro () const
 
bool IsIntrinsic () const
 
bool IsBuiltin () const
 
bool IsRuntimeFunction () const
 
bool IsGenericCallable () const
 
bool IsGenericType () const
 
bool IsTypeAlias () const
 
bool IsExternConstant () const
 
bool IsNamespaceConstant () const
 
bool IsValue () const
 
bool IsScope () const
 
bool IsCallable () const
 
virtual const char * type_name () const
 
ScopeParentScope () const
 
SourcePosition Position () const
 
void SetPosition (const SourcePosition &position)
 
SourcePosition IdentifierPosition () const
 
void SetIdentifierPosition (const SourcePosition &position)
 
bool IsUserDefined () const
 
void SetIsUserDefined (bool is_user_defined)
 

Private Member Functions

 Builtin (std::string external_name, std::string readable_name, Builtin::Kind kind, Flags flags, const Signature &signature, std::optional< std::string > use_counter_name, std::optional< Statement * > body)
 

Private Attributes

Kind kind_
 
Flags flags_
 
std::optional< std::string > use_counter_name_
 

Friends

class Declarations
 

Additional Inherited Members

- Static Public Member Functions inherited from v8::internal::torque::Callable
static std::string PrefixNameForCCOutput (const std::string &name)
 
static std::string PrefixNameForCCDebugOutput (const std::string &name)
 
- Protected Member Functions inherited from v8::internal::torque::Callable
 Callable (Declarable::Kind kind, std::string external_name, std::string readable_name, Signature signature, std::optional< Statement * > body)
 
- Protected Member Functions inherited from v8::internal::torque::Declarable
 Declarable (Kind kind)
 

Detailed Description

Definition at line 497 of file declarable.h.

Member Typedef Documentation

◆ Flags

Member Enumeration Documentation

◆ Flag

Enumerator
kNone 
kCustomInterfaceDescriptor 

Definition at line 500 of file declarable.h.

◆ Kind

Enumerator
kStub 
kFixedArgsJavaScript 
kVarArgsJavaScript 

Definition at line 499 of file declarable.h.

Constructor & Destructor Documentation

◆ Builtin()

v8::internal::torque::Builtin::Builtin ( std::string external_name,
std::string readable_name,
Builtin::Kind kind,
Flags flags,
const Signature & signature,
std::optional< std::string > use_counter_name,
std::optional< Statement * > body )
inlineprivate

Definition at line 520 of file declarable.h.

Member Function Documentation

◆ flags()

Flags v8::internal::torque::Builtin::flags ( ) const
inline

Definition at line 504 of file declarable.h.

◆ HasCustomInterfaceDescriptor()

bool v8::internal::torque::Builtin::HasCustomInterfaceDescriptor ( ) const
inline

Definition at line 514 of file declarable.h.

◆ IsFixedArgsJavaScript()

bool v8::internal::torque::Builtin::IsFixedArgsJavaScript ( ) const
inline

Definition at line 510 of file declarable.h.

Here is the caller graph for this function:

◆ IsJavaScript()

bool v8::internal::torque::Builtin::IsJavaScript ( ) const
inline

Definition at line 511 of file declarable.h.

Here is the call graph for this function:

◆ IsStub()

bool v8::internal::torque::Builtin::IsStub ( ) const
inline

Definition at line 508 of file declarable.h.

◆ IsVarArgsJavaScript()

bool v8::internal::torque::Builtin::IsVarArgsJavaScript ( ) const
inline

Definition at line 509 of file declarable.h.

Here is the caller graph for this function:

◆ kind()

Kind v8::internal::torque::Builtin::kind ( ) const
inline

Definition at line 503 of file declarable.h.

◆ use_counter_name()

std::optional< std::string > v8::internal::torque::Builtin::use_counter_name ( ) const
inline

Definition at line 505 of file declarable.h.

Friends And Related Symbol Documentation

◆ Declarations

friend class Declarations
friend

Definition at line 519 of file declarable.h.

Member Data Documentation

◆ flags_

Flags v8::internal::torque::Builtin::flags_
private

Definition at line 531 of file declarable.h.

◆ kind_

Kind v8::internal::torque::Builtin::kind_
private

Definition at line 530 of file declarable.h.

◆ use_counter_name_

std::optional<std::string> v8::internal::torque::Builtin::use_counter_name_
private

Definition at line 532 of file declarable.h.


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