summaryrefslogtreecommitdiff
path: root/deps/v8/src/objects/module.tq
blob: cb6a2f90fd2a89bc97178a221c1ccdb2763c5758 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// Copyright 2019 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

@abstract
extern class Module extends HeapObject {
  // The complete export table, mapping an export name to its cell.
  exports: ObjectHashTable;
  // Hash for this object (a random non-zero Smi).
  hash: Smi;
  status: Smi;
  module_namespace: JSModuleNamespace|Undefined;
  // The exception in the case {status} is kErrored.
  exception: Object;
  // The top level promise capability of this module. Will only be defined
  // for cycle roots.
  top_level_capability: JSPromise|Undefined;
}

extern class JSModuleNamespace extends JSSpecialObject { module: Module; }

extern class ScriptOrModule extends Struct {
  resource_name: Object;
  host_defined_options: FixedArray;
}