diff options
Diffstat (limited to 'components/script/dom/bindings/namespace.rs')
-rw-r--r-- | components/script/dom/bindings/namespace.rs | 62 |
1 files changed, 0 insertions, 62 deletions
diff --git a/components/script/dom/bindings/namespace.rs b/components/script/dom/bindings/namespace.rs deleted file mode 100644 index ad0a5801519..00000000000 --- a/components/script/dom/bindings/namespace.rs +++ /dev/null @@ -1,62 +0,0 @@ -/* 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 https://mozilla.org/MPL/2.0/. */ - -//! Machinery to initialise namespace objects. - -use std::ffi::CStr; -use std::ptr; - -use js::jsapi::{JSClass, JSFunctionSpec}; -use js::rust::{HandleObject, MutableHandleObject}; -use script_bindings::constant::ConstantSpec; - -use crate::DomTypes; -use crate::dom::bindings::guard::Guard; -use crate::dom::bindings::interface::{create_object, define_on_global_object}; -use crate::script_runtime::JSContext; - -/// The class of a namespace object. -#[derive(Clone, Copy)] -pub(crate) struct NamespaceObjectClass(JSClass); - -unsafe impl Sync for NamespaceObjectClass {} - -impl NamespaceObjectClass { - /// Create a new `NamespaceObjectClass` structure. - pub(crate) const unsafe fn new(name: &'static CStr) -> Self { - NamespaceObjectClass(JSClass { - name: name.as_ptr(), - flags: 0, - cOps: 0 as *mut _, - spec: ptr::null(), - ext: ptr::null(), - oOps: ptr::null(), - }) - } -} - -/// Create a new namespace object. -#[allow(clippy::too_many_arguments)] -pub(crate) fn create_namespace_object<D: DomTypes>( - cx: JSContext, - global: HandleObject, - proto: HandleObject, - class: &'static NamespaceObjectClass, - methods: &[Guard<&'static [JSFunctionSpec]>], - constants: &[Guard<&'static [ConstantSpec]>], - name: &CStr, - mut rval: MutableHandleObject, -) { - create_object::<D>( - cx, - global, - proto, - &class.0, - methods, - &[], - constants, - rval.reborrow(), - ); - define_on_global_object(cx, global, name, rval.handle()); -} |