1// Copyright 2021 the V8 project authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#ifndef V8_CODEGEN_SCRIPT_DETAILS_H_ 6#define V8_CODEGEN_SCRIPT_DETAILS_H_ 7 8#include "include/v8-script.h" 9#include "src/common/globals.h" 10#include "src/objects/fixed-array.h" 11#include "src/objects/objects.h" 12 13namespace v8 { 14namespace internal { 15 16struct ScriptDetails { 17 ScriptDetails() 18 : line_offset(0), column_offset(0), repl_mode(REPLMode::kNo) {} 19 explicit ScriptDetails( 20 Handle<Object> script_name, 21 ScriptOriginOptions origin_options = v8::ScriptOriginOptions()) 22 : line_offset(0), 23 column_offset(0), 24 name_obj(script_name), 25 repl_mode(REPLMode::kNo), 26 origin_options(origin_options) {} 27 28 int line_offset; 29 int column_offset; 30 MaybeHandle<Object> name_obj; 31 MaybeHandle<Object> source_map_url; 32 MaybeHandle<Object> host_defined_options; 33 REPLMode repl_mode; 34 const ScriptOriginOptions origin_options; 35}; 36 37} // namespace internal 38} // namespace v8 39 40#endif // V8_CODEGEN_SCRIPT_DETAILS_H_ 41