0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-07-04 09:38:37 +02:00

ircd::js: Add additional secondary object constructions.

This commit is contained in:
Jason Volk 2016-10-24 22:26:47 -07:00
parent fd0f925459
commit 8f8f747628

View file

@ -34,6 +34,8 @@ struct object
operator JS::Value() const;
// new object
object(const JSClass *const &, const handle &ctor, const JS::HandleValueArray &args);
object(const JSClass *const &, const JS::CallArgs &args);
object(const JSClass *const &, const object &proto);
object(const JSClass *const &);
@ -131,6 +133,29 @@ object::object(const JSClass *const &clasp,
{
}
inline
object::object(const JSClass *const &clasp,
const JS::CallArgs &args)
:JS::Rooted<JSObject *>
{
*cx,
JS_NewObjectForConstructor(*cx, clasp, args)
}
{
}
inline
object::object(const JSClass *const &clasp,
const object::handle &ctor,
const JS::HandleValueArray &args)
:JS::Rooted<JSObject *>
{
*cx,
JS_New(*cx, ctor, args)
}
{
}
inline
object::operator JS::Value()
const