Skip to content

Commit

Permalink
Bug 1708739 - Move WeakMap APIs to new public header r=yulia
Browse files Browse the repository at this point in the history
  • Loading branch information
jonco3 committed May 1, 2021
1 parent 2d4dbf6 commit 402ae42
Show file tree
Hide file tree
Showing 4 changed files with 37 additions and 18 deletions.
1 change: 1 addition & 0 deletions js/moz.build
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ for header in (
"SweepingAPI.h",
"TraceKind.h",
"TracingAPI.h",
"WeakMap.h",
"WeakMapPtr.h",
"GCHashTable.h",
"GCPolicyAPI.h",
Expand Down
34 changes: 34 additions & 0 deletions js/public/WeakMap.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
* vim: set ts=8 sts=2 et sw=2 tw=80:
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */

/*
* Weak Maps.
*/

#ifndef js_WeakMap_h
#define js_WeakMap_h

#include "jspubtd.h"

namespace JS {

extern JS_PUBLIC_API JSObject* NewWeakMapObject(JSContext* cx);

extern JS_PUBLIC_API bool IsWeakMapObject(JSObject* obj);

extern JS_PUBLIC_API bool GetWeakMapEntry(JSContext* cx,
JS::HandleObject mapObj,
JS::HandleObject key,
JS::MutableHandleValue val);

extern JS_PUBLIC_API bool SetWeakMapEntry(JSContext* cx,
JS::HandleObject mapObj,
JS::HandleObject key,
JS::HandleValue val);

} // namespace JS

#endif // js_WeakMap_h
19 changes: 1 addition & 18 deletions js/src/jsapi.h
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@
#include "js/Value.h"
#include "js/ValueArray.h"
#include "js/Vector.h"
#include "js/WeakMap.h"

/************************************************************************/

Expand Down Expand Up @@ -2054,24 +2055,6 @@ extern JS_PUBLIC_API bool CreateError(

/************************************************************************/

/*
* Weak Maps.
*/

extern JS_PUBLIC_API JSObject* NewWeakMapObject(JSContext* cx);

extern JS_PUBLIC_API bool IsWeakMapObject(JSObject* obj);

extern JS_PUBLIC_API bool GetWeakMapEntry(JSContext* cx,
JS::HandleObject mapObj,
JS::HandleObject key,
JS::MutableHandleValue val);

extern JS_PUBLIC_API bool SetWeakMapEntry(JSContext* cx,
JS::HandleObject mapObj,
JS::HandleObject key,
JS::HandleValue val);

/*
* Map
*/
Expand Down
1 change: 1 addition & 0 deletions js/src/moz.build
Original file line number Diff line number Diff line change
Expand Up @@ -215,6 +215,7 @@ EXPORTS.js += [
"../public/Warnings.h",
"../public/WasmFeatures.h",
"../public/WasmModule.h",
"../public/WeakMap.h",
"../public/WeakMapPtr.h",
"../public/Wrapper.h",
]
Expand Down

0 comments on commit 402ae42

Please sign in to comment.