summaryrefslogtreecommitdiff
path: root/deps/v8/src/objects/js-generator.h
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/objects/js-generator.h')
-rw-r--r--deps/v8/src/objects/js-generator.h79
1 files changed, 15 insertions, 64 deletions
diff --git a/deps/v8/src/objects/js-generator.h b/deps/v8/src/objects/js-generator.h
index 0e99d824ab..a56ea917eb 100644
--- a/deps/v8/src/objects/js-generator.h
+++ b/deps/v8/src/objects/js-generator.h
@@ -17,24 +17,9 @@ namespace internal {
// Forward declarations.
class JSPromise;
-class JSGeneratorObject : public JSObject {
+class JSGeneratorObject
+ : public TorqueGeneratedJSGeneratorObject<JSGeneratorObject, JSObject> {
public:
- // [function]: The function corresponding to this generator object.
- DECL_ACCESSORS(function, JSFunction)
-
- // [context]: The context of the suspended computation.
- DECL_ACCESSORS(context, Context)
-
- // [receiver]: The receiver of the suspended computation.
- DECL_ACCESSORS(receiver, Object)
-
- // [input_or_debug_pos]
- // For executing generators: the most recent input value.
- // For suspended generators: debug information (bytecode offset).
- // There is currently no need to remember the most recent input value for a
- // suspended generator.
- DECL_ACCESSORS(input_or_debug_pos, Object)
-
// [resume_mode]: The most recent resume mode.
enum ResumeMode { kNext, kReturn, kThrow };
DECL_INT_ACCESSORS(resume_mode)
@@ -54,84 +39,50 @@ class JSGeneratorObject : public JSObject {
// is suspended.
int source_position() const;
- // [parameters_and_registers]: Saved interpreter register file.
- DECL_ACCESSORS(parameters_and_registers, FixedArray)
-
- DECL_CAST(JSGeneratorObject)
-
// Dispatched behavior.
DECL_PRINTER(JSGeneratorObject)
- DECL_VERIFIER(JSGeneratorObject)
// Magic sentinel values for the continuation.
static const int kGeneratorExecuting = -2;
static const int kGeneratorClosed = -1;
- // Layout description.
- DEFINE_FIELD_OFFSET_CONSTANTS(JSObject::kHeaderSize,
- TORQUE_GENERATED_JSGENERATOR_OBJECT_FIELDS)
-
- OBJECT_CONSTRUCTORS(JSGeneratorObject, JSObject);
+ TQ_OBJECT_CONSTRUCTORS(JSGeneratorObject)
};
-class JSAsyncFunctionObject : public JSGeneratorObject {
+class JSAsyncFunctionObject
+ : public TorqueGeneratedJSAsyncFunctionObject<JSAsyncFunctionObject,
+ JSGeneratorObject> {
public:
- DECL_CAST(JSAsyncFunctionObject)
-
// Dispatched behavior.
DECL_VERIFIER(JSAsyncFunctionObject)
- // [promise]: The promise of the async function.
- DECL_ACCESSORS(promise, JSPromise)
-
- // Layout description.
- DEFINE_FIELD_OFFSET_CONSTANTS(JSGeneratorObject::kSize,
- TORQUE_GENERATED_JSASYNC_FUNCTION_OBJECT_FIELDS)
-
- OBJECT_CONSTRUCTORS(JSAsyncFunctionObject, JSGeneratorObject);
+ TQ_OBJECT_CONSTRUCTORS(JSAsyncFunctionObject)
};
-class JSAsyncGeneratorObject : public JSGeneratorObject {
+class JSAsyncGeneratorObject
+ : public TorqueGeneratedJSAsyncGeneratorObject<JSAsyncGeneratorObject,
+ JSGeneratorObject> {
public:
- DECL_CAST(JSAsyncGeneratorObject)
-
// Dispatched behavior.
DECL_VERIFIER(JSAsyncGeneratorObject)
- // [queue]
- // Pointer to the head of a singly linked list of AsyncGeneratorRequest, or
- // undefined.
- DECL_ACCESSORS(queue, HeapObject)
-
// [is_awaiting]
// Whether or not the generator is currently awaiting.
DECL_INT_ACCESSORS(is_awaiting)
- // Layout description.
- DEFINE_FIELD_OFFSET_CONSTANTS(
- JSGeneratorObject::kSize,
- TORQUE_GENERATED_JSASYNC_GENERATOR_OBJECT_FIELDS)
-#undef JS_ASYNC_GENERATOR_FIELDS
-
- OBJECT_CONSTRUCTORS(JSAsyncGeneratorObject, JSGeneratorObject);
+ TQ_OBJECT_CONSTRUCTORS(JSAsyncGeneratorObject)
};
-class AsyncGeneratorRequest : public Struct {
+class AsyncGeneratorRequest
+ : public TorqueGeneratedAsyncGeneratorRequest<AsyncGeneratorRequest,
+ Struct> {
public:
- // Holds an AsyncGeneratorRequest, or Undefined.
- DECL_ACCESSORS(next, Object)
DECL_INT_ACCESSORS(resume_mode)
- DECL_ACCESSORS(value, Object)
- DECL_ACCESSORS(promise, Object)
-
- DEFINE_FIELD_OFFSET_CONSTANTS(Struct::kHeaderSize,
- TORQUE_GENERATED_ASYNC_GENERATOR_REQUEST_FIELDS)
- DECL_CAST(AsyncGeneratorRequest)
DECL_PRINTER(AsyncGeneratorRequest)
DECL_VERIFIER(AsyncGeneratorRequest)
- OBJECT_CONSTRUCTORS(AsyncGeneratorRequest, Struct);
+ TQ_OBJECT_CONSTRUCTORS(AsyncGeneratorRequest)
};
} // namespace internal