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

#include <v8-fast-api-calls.h>

Collaboration diagram for v8::CFunction:

Classes

class  ArgUnwrap
 
class  ArgUnwrap< R(*)(Args...)>
 

Public Types

enum class  OverloadResolution { kImpossible , kAtRuntime , kAtCompileTime }
 

Public Member Functions

constexpr CFunction ()
 
const CTypeInfoReturnInfo () const
 
const CTypeInfoArgumentInfo (unsigned int index) const
 
unsigned int ArgumentCount () const
 
const void * GetAddress () const
 
CFunctionInfo::Int64Representation GetInt64Representation () const
 
const CFunctionInfoGetTypeInfo () const
 
 CFunction (const void *address, const CFunctionInfo *type_info)
 

Static Public Member Functions

template<typename F >
static CFunction Make (F *func, CFunctionInfo::Int64Representation int64_rep=CFunctionInfo::Int64Representation::kNumber)
 
template<typename R , typename... Args, typename R_Patch , typename... Args_Patch>
static CFunction Make (R(*func)(Args...), R_Patch(*patching_func)(Args_Patch...), CFunctionInfo::Int64Representation int64_rep=CFunctionInfo::Int64Representation::kNumber)
 

Private Attributes

const void * address_
 
const CFunctionInfotype_info_
 

Detailed Description

Definition at line 419 of file v8-fast-api-calls.h.

Member Enumeration Documentation

◆ OverloadResolution

Enumerator
kImpossible 
kAtRuntime 
kAtCompileTime 

Definition at line 437 of file v8-fast-api-calls.h.

Constructor & Destructor Documentation

◆ CFunction() [1/2]

v8::CFunction::CFunction ( )
inlineconstexpr

Definition at line 421 of file v8-fast-api-calls.h.

◆ CFunction() [2/2]

v8::CFunction::CFunction ( const void * address,
const CFunctionInfo * type_info )

Definition at line 11852 of file api.cc.

Member Function Documentation

◆ ArgumentCount()

unsigned int v8::CFunction::ArgumentCount ( ) const
inline

Definition at line 429 of file v8-fast-api-calls.h.

◆ ArgumentInfo()

const CTypeInfo & v8::CFunction::ArgumentInfo ( unsigned int index) const
inline

Definition at line 425 of file v8-fast-api-calls.h.

◆ GetAddress()

const void * v8::CFunction::GetAddress ( ) const
inline

Definition at line 431 of file v8-fast-api-calls.h.

Here is the caller graph for this function:

◆ GetInt64Representation()

CFunctionInfo::Int64Representation v8::CFunction::GetInt64Representation ( ) const
inline

Definition at line 432 of file v8-fast-api-calls.h.

◆ GetTypeInfo()

const CFunctionInfo * v8::CFunction::GetTypeInfo ( ) const
inline

Definition at line 435 of file v8-fast-api-calls.h.

Here is the caller graph for this function:

◆ Make() [1/2]

template<typename F >
static CFunction v8::CFunction::Make ( F * func,
CFunctionInfo::Int64Representation int64_rep = CFunctionInfo::Int64Representation::kNumber )
inlinestatic

Definition at line 440 of file v8-fast-api-calls.h.

Here is the caller graph for this function:

◆ Make() [2/2]

template<typename R , typename... Args, typename R_Patch , typename... Args_Patch>
static CFunction v8::CFunction::Make ( R(* func )(Args...),
R_Patch(* patching_func )(Args_Patch...),
CFunctionInfo::Int64Representation int64_rep = CFunctionInfo::Int64Representation::kNumber )
inlinestatic

Definition at line 451 of file v8-fast-api-calls.h.

◆ ReturnInfo()

const CTypeInfo & v8::CFunction::ReturnInfo ( ) const
inline

Definition at line 423 of file v8-fast-api-calls.h.

Member Data Documentation

◆ address_

const void* v8::CFunction::address_
private

Definition at line 466 of file v8-fast-api-calls.h.

◆ type_info_

const CFunctionInfo* v8::CFunction::type_info_
private

Definition at line 467 of file v8-fast-api-calls.h.


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