Bug 1678374 - Fix includes in js/public. r=jandem

Differential Revision: https://phabricator.services.mozilla.com/D97615
This commit is contained in:
Simon Giesecke 2021-03-12 10:42:21 +00:00
parent 317bdfe06a
commit 951cfd1012
43 changed files with 128 additions and 83 deletions

View File

@ -17,9 +17,6 @@
#ifndef js_AllocationLogging_h
#define js_AllocationLogging_h
#include "mozilla/MemoryReporting.h"
#include "mozilla/PodOperations.h"
#include <stdint.h> // uint32_t
#include "jstypes.h" // JS_PUBLIC_API

View File

@ -7,8 +7,9 @@
#ifndef js_AllocationRecording_h
#define js_AllocationRecording_h
#include <stdint.h>
#include "jstypes.h"
#include "js/TypeDecls.h"
#include "js/Utility.h"
namespace JS {

View File

@ -13,11 +13,7 @@
#include "jstypes.h" // JS_PUBLIC_API
#include "js/RootingAPI.h" // JS::Handle
#include "js/Value.h" // JS::Value
struct JS_PUBLIC_API JSContext;
class JS_PUBLIC_API JSObject;
#include "js/TypeDecls.h"
namespace JS {

View File

@ -12,15 +12,15 @@
#include <stdint.h> // uint32_t
#include "jstypes.h" // JS_PUBLIC_API
#include "js/GCAPI.h" // JS::AutoRequireNoGC
#include "js/RootingAPI.h" // JS::Handle
#include "js/TypeDecls.h"
struct JS_PUBLIC_API JSContext;
class JS_PUBLIC_API JSObject;
namespace JS {
class JS_PUBLIC_API AutoRequireNoGC;
// CREATION
/**

View File

@ -8,18 +8,19 @@
#ifndef js_BigInt_h
#define js_BigInt_h
#include "mozilla/Range.h" // mozilla::Range
#include "mozilla/Span.h" // mozilla::Span
#include <limits> // std::numeric_limits
#include <stdint.h> // int64_t, uint64_t
#include <type_traits> // std::enable_if_t, std::{true,false}_type, std::is_{integral,signed,unsigned}_v
#include <utility> // std::declval
#include "jstypes.h" // JS_PUBLIC_API
#include "js/RootingAPI.h" // JS::Handle
#include "js/Value.h" // JS::Value
#include "jstypes.h" // JS_PUBLIC_API
#include "js/TypeDecls.h"
struct JS_PUBLIC_API JSContext;
namespace mozilla {
template <typename T>
class Range;
}
namespace JS {

View File

@ -9,13 +9,16 @@
#include "mozilla/Range.h"
#include "mozilla/Span.h"
#include "mozilla/Utf8.h"
#include "js/TypeDecls.h"
#include "js/Utility.h"
class JSLinearString;
namespace mozilla {
union Utf8Unit;
}
namespace JS {
/*

View File

@ -8,8 +8,6 @@
#ifndef js_CompilationAndEvaluation_h
#define js_CompilationAndEvaluation_h
#include "mozilla/Utf8.h" // mozilla::Utf8Unit
#include <stddef.h> // size_t
#include <stdio.h> // FILE
@ -25,6 +23,10 @@ class JS_PUBLIC_API JSFunction;
class JS_PUBLIC_API JSObject;
class JS_PUBLIC_API JSScript;
namespace mozilla {
union Utf8Unit;
}
namespace JS {
template <typename UnitT>

View File

@ -33,11 +33,8 @@
#include "mozilla/MathAlgorithms.h" // mozilla::Abs
#include "js/Conversions.h" // JS::ToInteger
#include "js/RootingAPI.h" // JS::Handle
#include "js/Value.h" // JS::CanonicalizeNaN, JS::DoubleValue, JS::Value
struct JS_PUBLIC_API JSContext;
class JS_PUBLIC_API JSObject;
#include "js/TypeDecls.h"
#include "js/Value.h" // JS::CanonicalizeNaN, JS::DoubleValue, JS::Value
namespace JS {

View File

@ -13,8 +13,9 @@
#include "mozilla/Attributes.h"
#include "mozilla/MemoryReporting.h"
#include "jsapi.h"
#include "jspubtd.h"
#include <utility>
#include "jstypes.h"
#include "js/GCAPI.h"
#include "js/RootingAPI.h"

View File

@ -12,8 +12,7 @@
#include "jstypes.h" // JS_PUBLIC_API
#include "js/RootingAPI.h" // JS::Handle
#include "js/Value.h" // JS::Value
#include "js/TypeDecls.h"
struct JS_PUBLIC_API JSContext;

View File

@ -26,9 +26,8 @@
#include "jstypes.h" // JS_PUBLIC_API
#include "js/AllocPolicy.h" // js::SystemAllocPolicy
#include "js/AllocPolicy.h"
#include "js/CharacterEncoding.h" // JS::ConstUTF8CharsZ
#include "js/Exception.h" // JS::ExceptionStack
#include "js/RootingAPI.h" // JS::HandleObject, JS::RootedObject
#include "js/UniquePtr.h" // js::UniquePtr
#include "js/Vector.h" // js::Vector
@ -36,6 +35,13 @@
struct JS_PUBLIC_API JSContext;
class JS_PUBLIC_API JSString;
namespace JS {
class ExceptionStack;
}
namespace js {
class SystemAllocPolicy;
}
/**
* Possible exception types. These types are part of a JSErrorFormatString
* structure. They define which error to throw in case of a runtime error.

View File

@ -9,9 +9,11 @@
#include "mozilla/Attributes.h"
#include "jspubtd.h"
#include "jstypes.h"
#include "js/RootingAPI.h" // JS::{Handle,Rooted}
#include "js/Value.h" // JS::Value, JS::Handle<JS::Value>
#include "js/TypeDecls.h"
#include "js/Value.h" // JS::Value, JS::Handle<JS::Value>
namespace JS {

View File

@ -13,7 +13,9 @@
#include "js/HashTable.h"
#include "js/RootingAPI.h"
#include "js/SweepingAPI.h"
#include "js/TracingAPI.h"
#include "js/TypeDecls.h"
class JSTracer;
namespace JS {

View File

@ -142,7 +142,7 @@ class WrappedPtrOperations<mozilla::Variant<Ts...>, Wrapper> {
template <typename T>
JS::Handle<T> as() const {
return Handle<T>::fromMarkedLocation(&variant().template as<T>());
return JS::Handle<T>::fromMarkedLocation(&variant().template as<T>());
}
template <typename Matcher>

View File

@ -12,8 +12,9 @@
#include "js/AllocPolicy.h"
#include "js/GCPolicyAPI.h"
#include "js/RootingAPI.h"
#include "js/TracingAPI.h"
#include "js/Vector.h"
class JSTracer;
struct JSContext;
namespace JS {

View File

@ -13,22 +13,18 @@
#include <limits.h>
#include <type_traits>
#include "jspubtd.h"
#include "js/GCAnnotations.h"
#include "js/shadow/String.h" // JS::shadow::String
#include "js/shadow/Symbol.h" // JS::shadow::Symbol
#include "js/shadow/Zone.h" // JS::shadow::Zone
#include "js/TraceKind.h"
#include "js/Utility.h"
#include "js/TypeDecls.h"
#ifndef JS_BITS_PER_WORD
# error \
"JS_BITS_PER_WORD must be defined. Did you forget to include js-config.h?"
#endif
struct JSExternalStringCallbacks;
/* These values are private to the JS engine. */
namespace js {

View File

@ -26,10 +26,12 @@
#include "jstypes.h"
#include "js/GCAnnotations.h"
#include "js/HeapAPI.h"
#include "js/RootingAPI.h"
#include "js/TraceKind.h"
#include "js/TracingAPI.h"
#include "js/TypeDecls.h"
#include "js/Utility.h"
// All jsids with the low bit set are integer ids. This means the other type
// tags must all be even.

View File

@ -14,12 +14,7 @@
#include "jstypes.h" // JS_PUBLIC_API
#include "js/RootingAPI.h" // JS::Handle, JS::MutableHandle
#include "js/Value.h" // JS::Value
struct JS_PUBLIC_API JSContext;
class JS_PUBLIC_API JSObject;
class JS_PUBLIC_API JSString;
#include "js/TypeDecls.h"
using JSONWriteCallback = bool (*)(const char16_t* buf, uint32_t len,
void* data);

View File

@ -16,18 +16,27 @@
#include <string.h>
#include <type_traits>
#include "jspubtd.h"
#include "jstypes.h"
#include "js/AllocPolicy.h"
#include "js/GCAPI.h"
#include "js/HashTable.h"
#include "js/TracingAPI.h"
#include "js/TraceKind.h"
#include "js/TypeDecls.h"
#include "js/Utility.h"
#include "js/Vector.h"
class nsISupports; // Needed for ObjectPrivateVisitor.
namespace js {
class SystemAllocPolicy;
}
namespace mozilla {
struct CStringHasher;
}
namespace JS {
class JS_PUBLIC_API AutoRequireNoGC;
struct TabSizes {
TabSizes() = default;

View File

@ -9,8 +9,6 @@
#ifndef js_Modules_h
#define js_Modules_h
#include "mozilla/Utf8.h" // mozilla::Utf8Unit
#include <stdint.h> // uint32_t
#include "jstypes.h" // JS_PUBLIC_API
@ -29,6 +27,10 @@ template <typename UnitT>
class SourceText;
} // namespace JS
namespace mozilla {
union Utf8Unit;
}
namespace JS {
using ModuleResolveHook = JSObject* (*)(JSContext*, Handle<Value>,

View File

@ -12,27 +12,31 @@
#define js_OffThreadScriptCompilation_h
#include "mozilla/Range.h" // mozilla::Range
#include "mozilla/Utf8.h" // mozilla::Utf8Unit
#include "mozilla/Vector.h" // mozilla::Vector
#include <stddef.h> // size_t
#include "jstypes.h" // JS_PUBLIC_API
#include "js/CompileOptions.h" // JS::ReadOnlyCompileOptions
#include "js/GCVector.h" // JS::GCVector
#include "js/Transcoding.h" // JS::TranscodeSource
#include "js/GCVector.h" // JS::GCVector
struct JS_PUBLIC_API JSContext;
class JS_PUBLIC_API JSScript;
namespace JS {
class JS_PUBLIC_API ReadOnlyCompileOptions;
struct TranscodeSource;
template <typename UnitT>
class SourceText;
} // namespace JS
namespace mozilla {
union Utf8Unit;
}
namespace JS {
class OffThreadToken;

View File

@ -13,7 +13,9 @@
#include <stdint.h>
#include "jspubtd.h"
#include "jstypes.h"
#include "js/TypeDecls.h"
struct JSStructuredCloneReader;
struct JSStructuredCloneWriter;

View File

@ -7,12 +7,14 @@
#ifndef js_ProfilingFrameIterator_h
#define js_ProfilingFrameIterator_h
#include "mozilla/Assertions.h"
#include "mozilla/Attributes.h"
#include "mozilla/Maybe.h"
#include "js/GCAPI.h"
#include "jstypes.h"
#include "js/GCAnnotations.h"
#include "js/TypeDecls.h"
#include "js/Utility.h"
namespace js {
class Activation;

View File

@ -7,14 +7,14 @@
#ifndef js_ProfilingStack_h
#define js_ProfilingStack_h
#include <algorithm>
#include "mozilla/Atomics.h"
#include <stdint.h>
#include "jstypes.h"
#include "js/ProfilingCategory.h"
#include "js/TypeDecls.h"
#include "js/Utility.h"
class JS_PUBLIC_API JSTracer;
class JS_FRIEND_API ProfilingStack;

View File

@ -9,7 +9,8 @@
#include "mozilla/Attributes.h"
#include "jspubtd.h"
#include "jstypes.h"
#include "js/RootingAPI.h"
#include "js/TypeDecls.h"
#include "js/UniquePtr.h"

View File

@ -9,13 +9,18 @@
#include "mozilla/Maybe.h"
#include "jsfriendapi.h"
#include "jstypes.h" // for JS_FRIEND_API, JS_FRIEND_DATA
#include "js/Array.h" // JS::IsArrayAnswer
#include "js/CallNonGenericMethod.h"
#include "js/Class.h"
#include "js/HeapAPI.h" // for ObjectIsMarkedBlack
#include "js/Id.h" // for jsid
#include "js/Object.h" // JS::GetClass
#include "js/RootingAPI.h" // for Handle, MutableHandle (ptr only)
#include "js/shadow/Object.h" // JS::shadow::Object
#include "js/TypeDecls.h" // for HandleObject, HandleId, HandleValue, MutableHandleIdVector, MutableHandleValue, MutableHand...
#include "js/Value.h" // for Value, AssertValueIsNotGray, UndefinedValue, ObjectOrNullValue
namespace js {

View File

@ -9,8 +9,6 @@
#include "js/shadow/Realm.h" // JS::shadow::Realm
#include "jspubtd.h"
#include "js/GCAPI.h"
#include "js/GCPolicyAPI.h"
#include "js/TypeDecls.h" // forward-declaration of JS::Realm
@ -23,6 +21,7 @@ JS_PUBLIC_API bool RealmNeedsSweep(JS::Realm* realm);
} // namespace js
namespace JS {
class JS_PUBLIC_API AutoRequireNoGC;
// Each Realm holds a strong reference to its GlobalObject, and vice versa.
template <>

View File

@ -14,8 +14,7 @@
#include "jstypes.h" // JS_PUBLIC_API
#include "js/RegExpFlags.h" // JS::RegExpFlags
#include "js/RootingAPI.h" // JS::{,Mutable}Handle
#include "js/Value.h" // JS::Value
#include "js/TypeDecls.h"
struct JS_PUBLIC_API JSContext;
class JS_PUBLIC_API JSString;

View File

@ -28,7 +28,6 @@
#include "js/Realm.h"
#include "js/TypeDecls.h"
#include "js/UniquePtr.h"
#include "js/Utility.h"
/*
* [SMDOC] Stack Rooting

View File

@ -13,10 +13,7 @@
#include "jstypes.h" // JS_FRIEND_API, JS_PUBLIC_API
#include "js/RootingAPI.h" // JS::Handle, JS::MutableHandle
struct JS_PUBLIC_API JSContext;
class JS_PUBLIC_API JSObject;
#include "js/TypeDecls.h"
struct JSPrincipals;

View File

@ -13,12 +13,11 @@
#include "jstypes.h" // JS_PUBLIC_API
#include "js/GCAPI.h" // JS::AutoRequireNoGC
struct JS_PUBLIC_API JSContext;
class JS_PUBLIC_API JSObject;
namespace JS {
class JS_PUBLIC_API AutoRequireNoGC;
// CREATION

View File

@ -50,7 +50,6 @@
#include "mozilla/Assertions.h" // MOZ_ASSERT
#include "mozilla/Attributes.h" // MOZ_COLD, MOZ_IS_CLASS_INIT
#include "mozilla/Likely.h" // MOZ_UNLIKELY
#include "mozilla/Utf8.h" // mozilla::Utf8Unit
#include <stddef.h> // size_t
#include <stdint.h> // UINT32_MAX
@ -59,6 +58,10 @@
#include "js/UniquePtr.h" // js::UniquePtr
#include "js/Utility.h" // JS::FreePolicy
namespace mozilla {
union Utf8Unit;
}
namespace JS {
namespace detail {

View File

@ -21,6 +21,7 @@
#include "jstypes.h" // JS_FRIEND_API
#include "js/AllocPolicy.h"
#include "js/RootingAPI.h" // JS::Handle, JS::Rooted
#include "js/String.h" // JS::GetStringLength
#include "js/TypeDecls.h" // JSContext, JS::Latin1Char, JSString

View File

@ -7,7 +7,14 @@
#ifndef js_SweepingAPI_h
#define js_SweepingAPI_h
#include "js/HeapAPI.h"
#include "mozilla/LinkedList.h"
#include "mozilla/Maybe.h"
#include "jstypes.h"
#include "js/GCAnnotations.h"
#include "js/GCPolicyAPI.h"
#include "js/RootingAPI.h"
namespace js {
namespace gc {

View File

@ -10,6 +10,8 @@
#include "jstypes.h"
#include "js/TypeDecls.h"
namespace mozilla {
class JSONWriteFunc;
class TimeStamp;

View File

@ -7,8 +7,8 @@
#ifndef js_UbiNodeBreadthFirst_h
#define js_UbiNodeBreadthFirst_h
#include "js/HashTable.h"
#include "js/UbiNode.h"
#include "js/Utility.h"
#include "js/Vector.h"
namespace JS {

View File

@ -8,16 +8,19 @@
#define js_UbiNodePostOrder_h
#include "mozilla/Attributes.h"
#include "mozilla/Maybe.h"
#include <utility>
#include "js/AllocPolicy.h"
#include "js/UbiNode.h"
#include "js/Utility.h"
#include "js/Vector.h"
namespace js {
class SystemAllocPolicy;
}
namespace JS {
class AutoCheckCannotGC;
namespace ubi {
/**

View File

@ -12,6 +12,7 @@
#include "js/Proxy.h"
namespace js {
struct CompartmentFilter;
/*
* Helper for Wrapper::New default options.

View File

@ -15,6 +15,7 @@
#include "gc/AllocKind.h"
#include "gc/GCEnum.h"
#include "js/GCAPI.h"
#include "js/TraceKind.h"
class JSExternalString;

View File

@ -17,6 +17,7 @@
#include "gc/Heap.h"
#include "js/AllocPolicy.h"
#include "js/Class.h"
#include "js/GCAPI.h"
#include "js/HeapAPI.h"
#include "js/TracingAPI.h"
#include "js/TypeDecls.h"

View File

@ -19,6 +19,7 @@
#include "gc/GCEnum.h"
#include "js/AllocPolicy.h"
#include "js/GCAPI.h"
#include "js/SliceBudget.h"
#include "js/UniquePtr.h"
#include "js/Vector.h"

View File

@ -17,6 +17,7 @@
#include "js/Class.h"
#include "js/ErrorReport.h"
#include "js/Exception.h"
#include "js/GCAPI.h"
#include "js/HeapAPI.h"
#include "js/Object.h" // JS::GetClass
#include "js/shadow/Function.h" // JS::shadow::Function

View File

@ -15,6 +15,7 @@
#include "NamespaceImports.h"
#include "js/OffThreadScriptCompilation.h"
#include "js/Transcoding.h"
#include "js/UniquePtr.h"
#include "threading/LockGuard.h"
#include "threading/Mutex.h"
@ -32,6 +33,10 @@ class AutoLockHelperThreadState;
struct PromiseHelperTask;
class SourceCompressionTask;
namespace gc {
class GCRuntime;
}
namespace jit {
class IonCompileTask;
class IonFreeTask;