// Copyright 2006-2008 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. // The infrastructure used for (localized) message reporting in V8. // // Note: there's a big unresolved issue about ownership of the data // structures used by this framework. #ifndef V8_EXECUTION_MESSAGES_H_ #define V8_EXECUTION_MESSAGES_H_ #include #include "src/base/optional.h" #include "src/common/message-template.h" #include "src/handles/handles.h" namespace v8 { namespace internal { namespace wasm { class WasmCode; } // Forward declarations. class AbstractCode; class FrameArray; class JSMessageObject; class LookupIterator; class SharedFunctionInfo; class SourceInfo; class WasmInstanceObject; class V8_EXPORT_PRIVATE MessageLocation { public: // Constructors for when source positions are already known. // TODO(delphick): Collapse to a single constructor with a default parameter // when we stop using the GCC that requires this separation. MessageLocation(Handle