v8  3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
once.h File Reference
#include "atomicops.h"
Include dependency graph for once.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  OneArgFunction< T >
 

Namespaces

 v8
 
 v8::internal
 

Macros

#define V8_ONCE_INIT   0
 
#define V8_DECLARE_ONCE(NAME)   ::v8::internal::OnceType NAME
 

Typedefs

typedef AtomicWord OnceType
 
typedef void(* NoArgFunction )()
 
typedef void(* PointerArgFunction )(void *arg)
 

Enumerations

enum  { ONCE_STATE_UNINITIALIZED = 0, ONCE_STATE_EXECUTING_FUNCTION = 1, ONCE_STATE_DONE = 2 }
 

Functions

void CallOnceImpl (OnceType *once, PointerArgFunction init_func, void *arg)
 
void CallOnce (OnceType *once, NoArgFunction init_func)
 
template<typename Arg >
void CallOnce (OnceType *once, typename OneArgFunction< Arg * >::type init_func, Arg *arg)
 

Macro Definition Documentation

#define V8_DECLARE_ONCE (   NAME)    ::v8::internal::OnceType NAME

Definition at line 87 of file once.h.

#define V8_ONCE_INIT   0

Definition at line 85 of file once.h.