/* 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/. */ use dom::bindings::js::JS; use dom::bindings::utils::{Reflector, Reflectable}; use dom::blob::Blob; use dom::window::Window; use servo_util::str::DOMString; use js::jsapi::JSContext; use js::jsval::{JSVal, NullValue}; #[deriving(Encodable)] pub struct TestBinding { reflector: Reflector, window: JS, } impl TestBinding { pub fn BooleanAttribute(&self) -> bool { false } pub fn SetBooleanAttribute(&self, _: bool) {} pub fn ByteAttribute(&self) -> i8 { 0 } pub fn SetByteAttribute(&self, _: i8) {} pub fn OctetAttribute(&self) -> u8 { 0 } pub fn SetOctetAttribute(&self, _: u8) {} pub fn ShortAttribute(&self) -> i16 { 0 } pub fn SetShortAttribute(&self, _: i16) {} pub fn UnsignedShortAttribute(&self) -> u16 { 0 } pub fn SetUnsignedShortAttribute(&self, _: u16) {} pub fn LongAttribute(&self) -> i32 { 0 } pub fn SetLongAttribute(&self, _: i32) {} pub fn UnsignedLongAttribute(&self) -> u32 { 0 } pub fn SetUnsignedLongAttribute(&self, _: u32) {} pub fn LongLongAttribute(&self) -> i64 { 0 } pub fn SetLongLongAttribute(&self, _: i64) {} pub fn UnsignedLongLongAttribute(&self) -> u64 { 0 } pub fn SetUnsignedLongLongAttribute(&self, _: u64) {} pub fn FloatAttribute(&self) -> f32 { 0. } pub fn SetFloatAttribute(&self, _: f32) {} pub fn DoubleAttribute(&self) -> f64 { 0. } pub fn SetDoubleAttribute(&self, _: f64) {} pub fn StringAttribute(&self) -> DOMString { ~"" } pub fn SetStringAttribute(&self, _: DOMString) {} pub fn InterfaceAttribute(&self) -> JS { Blob::new(&self.window) } pub fn SetInterfaceAttribute(&self, _: &JS) {} pub fn AnyAttribute(&self, _: *JSContext) -> JSVal { NullValue() } pub fn SetAnyAttribute(&self, _: *JSContext, _: JSVal) {} pub fn GetBooleanAttributeNullable(&self) -> Option { Some(false) } pub fn SetBooleanAttributeNullable(&self, _: Option) {} pub fn GetByteAttributeNullable(&self) -> Option { Some(0) } pub fn SetByteAttributeNullable(&self, _: Option) {} pub fn GetOctetAttributeNullable(&self) -> Option { Some(0) } pub fn SetOctetAttributeNullable(&self, _: Option) {} pub fn GetShortAttributeNullable(&self) -> Option { Some(0) } pub fn SetShortAttributeNullable(&self, _: Option) {} pub fn GetUnsignedShortAttributeNullable(&self) -> Option { Some(0) } pub fn SetUnsignedShortAttributeNullable(&self, _: Option) {} pub fn GetLongAttributeNullable(&self) -> Option { Some(0) } pub fn SetLongAttributeNullable(&self, _: Option) {} pub fn GetUnsignedLongAttributeNullable(&self) -> Option { Some(0) } pub fn SetUnsignedLongAttributeNullable(&self, _: Option) {} pub fn GetLongLongAttributeNullable(&self) -> Option { Some(0) } pub fn SetLongLongAttributeNullable(&self, _: Option) {} pub fn GetUnsignedLongLongAttributeNullable(&self) -> Option { Some(0) } pub fn SetUnsignedLongLongAttributeNullable(&self, _: Option) {} pub fn GetFloatAttributeNullable(&self) -> Option { Some(0.) } pub fn SetFloatAttributeNullable(&self, _: Option) {} pub fn GetDoubleAttributeNullable(&self) -> Option { Some(0.) } pub fn SetDoubleAttributeNullable(&self, _: Option) {} pub fn GetStringAttributeNullable(&self) -> Option { Some(~"") } pub fn SetStringAttributeNullable(&self, _: Option) {} pub fn GetInterfaceAttributeNullable(&self) -> Option> { Some(Blob::new(&self.window)) } pub fn SetInterfaceAttributeNullable(&self, _: Option>) {} pub fn PassOptionalBoolean(&self, _: Option) {} pub fn PassOptionalByte(&self, _: Option) {} pub fn PassOptionalOctet(&self, _: Option) {} pub fn PassOptionalShort(&self, _: Option) {} pub fn PassOptionalUnsignedShort(&self, _: Option) {} pub fn PassOptionalLong(&self, _: Option) {} pub fn PassOptionalUnsignedLong(&self, _: Option) {} pub fn PassOptionalLongLong(&self, _: Option) {} pub fn PassOptionalUnsignedLongLong(&self, _: Option) {} pub fn PassOptionalFloat(&self, _: Option) {} pub fn PassOptionalDouble(&self, _: Option) {} pub fn PassOptionalString(&self, _: Option) {} pub fn PassOptionalInterface(&self, _: Option>) {} pub fn PassOptionalAny(&self, _: *JSContext, _: Option) {} pub fn PassOptionalNullableBoolean(&self, _: Option>) {} pub fn PassOptionalNullableByte(&self, _: Option>) {} pub fn PassOptionalNullableOctet(&self, _: Option>) {} pub fn PassOptionalNullableShort(&self, _: Option>) {} pub fn PassOptionalNullableUnsignedShort(&self, _: Option>) {} pub fn PassOptionalNullableLong(&self, _: Option>) {} pub fn PassOptionalNullableUnsignedLong(&self, _: Option>) {} pub fn PassOptionalNullableLongLong(&self, _: Option>) {} pub fn PassOptionalNullableUnsignedLongLong(&self, _: Option>) {} pub fn PassOptionalNullableFloat(&self, _: Option>) {} pub fn PassOptionalNullableDouble(&self, _: Option>) {} pub fn PassOptionalNullableString(&self, _: Option>) {} // pub fn PassOptionalNullableInterface(&self, _: Option>>) {} pub fn PassOptionalBooleanWithDefault(&self, _: bool) {} pub fn PassOptionalByteWithDefault(&self, _: i8) {} pub fn PassOptionalOctetWithDefault(&self, _: u8) {} pub fn PassOptionalShortWithDefault(&self, _: i16) {} pub fn PassOptionalUnsignedShortWithDefault(&self, _: u16) {} pub fn PassOptionalLongWithDefault(&self, _: i32) {} pub fn PassOptionalUnsignedLongWithDefault(&self, _: u32) {} pub fn PassOptionalLongLongWithDefault(&self, _: i64) {} pub fn PassOptionalUnsignedLongLongWithDefault(&self, _: u64) {} pub fn PassOptionalStringWithDefault(&self, _: DOMString) {} pub fn PassOptionalNullableBooleanWithDefault(&self, _: Option) {} pub fn PassOptionalNullableByteWithDefault(&self, _: Option) {} pub fn PassOptionalNullableOctetWithDefault(&self, _: Option) {} pub fn PassOptionalNullableShortWithDefault(&self, _: Option) {} pub fn PassOptionalNullableUnsignedShortWithDefault(&self, _: Option) {} pub fn PassOptionalNullableLongWithDefault(&self, _: Option) {} pub fn PassOptionalNullableUnsignedLongWithDefault(&self, _: Option) {} pub fn PassOptionalNullableLongLongWithDefault(&self, _: Option) {} pub fn PassOptionalNullableUnsignedLongLongWithDefault(&self, _: Option) {} pub fn PassOptionalNullableFloatWithDefault(&self, _: Option) {} pub fn PassOptionalNullableDoubleWithDefault(&self, _: Option) {} pub fn PassOptionalNullableStringWithDefault(&self, _: Option) {} pub fn PassOptionalNullableInterfaceWithDefault(&self, _: Option>) {} pub fn PassOptionalAnyWithDefault(&self, _: *JSContext, _: JSVal) {} pub fn PassOptionalNullableBooleanWithNonNullDefault(&self, _: Option) {} pub fn PassOptionalNullableByteWithNonNullDefault(&self, _: Option) {} pub fn PassOptionalNullableOctetWithNonNullDefault(&self, _: Option) {} pub fn PassOptionalNullableShortWithNonNullDefault(&self, _: Option) {} pub fn PassOptionalNullableUnsignedShortWithNonNullDefault(&self, _: Option) {} pub fn PassOptionalNullableLongWithNonNullDefault(&self, _: Option) {} pub fn PassOptionalNullableUnsignedLongWithNonNullDefault(&self, _: Option) {} pub fn PassOptionalNullableLongLongWithNonNullDefault(&self, _: Option) {} pub fn PassOptionalNullableUnsignedLongLongWithNonNullDefault(&self, _: Option) {} // pub fn PassOptionalNullableFloatWithNonNullDefault(&self, _: Option) {} // pub fn PassOptionalNullableDoubleWithNonNullDefault(&self, _: Option) {} pub fn PassOptionalNullableStringWithNonNullDefault(&self, _: Option) {} } impl Reflectable for TestBinding { fn reflector<'a>(&'a self) -> &'a Reflector { &self.reflector } fn mut_reflector<'a>(&'a mut self) -> &'a mut Reflector { &mut self.reflector } }