V8 Project
v8::internal::anonymous_namespace{builtins.cc}::BuiltinArguments< extra_args > Class Template Reference
+ Inheritance diagram for v8::internal::anonymous_namespace{builtins.cc}::BuiltinArguments< extra_args >:
+ Collaboration diagram for v8::internal::anonymous_namespace{builtins.cc}::BuiltinArguments< extra_args >:

Public Member Functions

 BuiltinArguments (int length, Object **arguments)
 
Object *& operator[] (int index)
 
template<class S >
Handle< Sat (int index)
 
Handle< Objectreceiver ()
 
Handle< JSFunctioncalled_function ()
 
int length () const
 
int length () const
 

Detailed Description

template<BuiltinExtraArguments extra_args>
class v8::internal::anonymous_namespace{builtins.cc}::BuiltinArguments< extra_args >

Definition at line 28 of file builtins.cc.

Constructor & Destructor Documentation

◆ BuiltinArguments()

template<BuiltinExtraArguments extra_args>
v8::internal::anonymous_namespace{builtins.cc}::BuiltinArguments< extra_args >::BuiltinArguments ( int  length,
Object **  arguments 
)
inline

Definition at line 30 of file builtins.cc.

Member Function Documentation

◆ at()

template<BuiltinExtraArguments extra_args>
template<class S >
Handle<S> v8::internal::anonymous_namespace{builtins.cc}::BuiltinArguments< extra_args >::at ( int  index)
inline

Definition at line 38 of file builtins.cc.

38  {
39  DCHECK(index < length());
40  return Arguments::at<S>(index);
41  }
#define DCHECK(condition)
Definition: logging.h:205

References DCHECK.

◆ called_function()

template<BuiltinExtraArguments extra_args>
Handle<JSFunction> v8::internal::anonymous_namespace{builtins.cc}::BuiltinArguments< extra_args >::called_function ( )
inline

Definition at line 47 of file builtins.cc.

47  {
48  STATIC_ASSERT(extra_args == NEEDS_CALLED_FUNCTION);
49  return Arguments::at<JSFunction>(Arguments::length() - 1);
50  }
@ NEEDS_CALLED_FUNCTION
Definition: builtins.h:14
STATIC_ASSERT(sizeof(CPURegister)==sizeof(Register))

References v8::internal::NEEDS_CALLED_FUNCTION, and v8::internal::STATIC_ASSERT().

+ Here is the call graph for this function:

◆ length() [1/2]

template<BuiltinExtraArguments extra_args>
int v8::internal::anonymous_namespace{builtins.cc}::BuiltinArguments< extra_args >::length ( ) const
inline

Definition at line 54 of file builtins.cc.

54  {
55  STATIC_ASSERT(extra_args == NO_EXTRA_ARGUMENTS);
56  return Arguments::length();
57  }
@ NO_EXTRA_ARGUMENTS
Definition: builtins.h:13

References v8::internal::NO_EXTRA_ARGUMENTS, and v8::internal::STATIC_ASSERT().

+ Here is the call graph for this function:

◆ length() [2/2]

int v8::internal::anonymous_namespace{builtins.cc}::BuiltinArguments< NEEDS_CALLED_FUNCTION >::length ( ) const

Definition at line 71 of file builtins.cc.

71  {
72  return Arguments::length() - 1;
73 }

◆ operator[]()

template<BuiltinExtraArguments extra_args>
Object*& v8::internal::anonymous_namespace{builtins.cc}::BuiltinArguments< extra_args >::operator[] ( int  index)
inline

Definition at line 33 of file builtins.cc.

33  {
34  DCHECK(index < length());
35  return Arguments::operator[](index);
36  }

References DCHECK.

◆ receiver()

template<BuiltinExtraArguments extra_args>
Handle<Object> v8::internal::anonymous_namespace{builtins.cc}::BuiltinArguments< extra_args >::receiver ( )
inline

Definition at line 43 of file builtins.cc.

43  {
44  return Arguments::at<Object>(0);
45  }

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