mirror of
https://github.com/servo/servo.git
synced 2025-10-15 07:50:20 +01:00
Use FooValue() functions.
This commit is contained in:
parent
9fbfb1909c
commit
84b0f45ed5
9 changed files with 72 additions and 87 deletions
|
@ -7,8 +7,8 @@ use js::jsapi::{JS_ValueToUint64, JS_ValueToInt64};
|
|||
use js::jsapi::{JS_ValueToECMAUint32, JS_ValueToECMAInt32};
|
||||
use js::jsapi::{JS_ValueToUint16, JS_ValueToNumber, JS_ValueToBoolean};
|
||||
use js::jsval::JSVal;
|
||||
use js::{JSVAL_FALSE, JSVAL_TRUE, JSVAL_NULL};
|
||||
use js::glue::{RUST_INT_TO_JSVAL, RUST_UINT_TO_JSVAL, RUST_JS_NumberValue};
|
||||
use js::jsval::{NullValue, BooleanValue, Int32Value, UInt32Value};
|
||||
use js::glue::RUST_JS_NumberValue;
|
||||
use js::glue::{RUST_JSVAL_IS_NULL, RUST_JSVAL_IS_VOID};
|
||||
|
||||
pub trait JSValConvertible {
|
||||
|
@ -31,11 +31,7 @@ unsafe fn convert_from_jsval<T: Default>(
|
|||
|
||||
impl JSValConvertible for bool {
|
||||
fn to_jsval(&self) -> JSVal {
|
||||
if *self {
|
||||
JSVAL_TRUE
|
||||
} else {
|
||||
JSVAL_FALSE
|
||||
}
|
||||
BooleanValue(*self)
|
||||
}
|
||||
|
||||
fn from_jsval(cx: *JSContext, val: JSVal) -> Result<bool, ()> {
|
||||
|
@ -46,9 +42,7 @@ impl JSValConvertible for bool {
|
|||
|
||||
impl JSValConvertible for i8 {
|
||||
fn to_jsval(&self) -> JSVal {
|
||||
unsafe {
|
||||
RUST_INT_TO_JSVAL(*self as i32)
|
||||
}
|
||||
Int32Value(*self as i32)
|
||||
}
|
||||
|
||||
fn from_jsval(cx: *JSContext, val: JSVal) -> Result<i8, ()> {
|
||||
|
@ -59,9 +53,7 @@ impl JSValConvertible for i8 {
|
|||
|
||||
impl JSValConvertible for u8 {
|
||||
fn to_jsval(&self) -> JSVal {
|
||||
unsafe {
|
||||
RUST_INT_TO_JSVAL(*self as i32)
|
||||
}
|
||||
Int32Value(*self as i32)
|
||||
}
|
||||
|
||||
fn from_jsval(cx: *JSContext, val: JSVal) -> Result<u8, ()> {
|
||||
|
@ -72,9 +64,7 @@ impl JSValConvertible for u8 {
|
|||
|
||||
impl JSValConvertible for i16 {
|
||||
fn to_jsval(&self) -> JSVal {
|
||||
unsafe {
|
||||
RUST_INT_TO_JSVAL(*self as i32)
|
||||
}
|
||||
Int32Value(*self as i32)
|
||||
}
|
||||
|
||||
fn from_jsval(cx: *JSContext, val: JSVal) -> Result<i16, ()> {
|
||||
|
@ -85,9 +75,7 @@ impl JSValConvertible for i16 {
|
|||
|
||||
impl JSValConvertible for u16 {
|
||||
fn to_jsval(&self) -> JSVal {
|
||||
unsafe {
|
||||
RUST_UINT_TO_JSVAL(*self as u32)
|
||||
}
|
||||
Int32Value(*self as i32)
|
||||
}
|
||||
|
||||
fn from_jsval(cx: *JSContext, val: JSVal) -> Result<u16, ()> {
|
||||
|
@ -97,9 +85,7 @@ impl JSValConvertible for u16 {
|
|||
|
||||
impl JSValConvertible for i32 {
|
||||
fn to_jsval(&self) -> JSVal {
|
||||
unsafe {
|
||||
RUST_INT_TO_JSVAL(*self)
|
||||
}
|
||||
Int32Value(*self)
|
||||
}
|
||||
|
||||
fn from_jsval(cx: *JSContext, val: JSVal) -> Result<i32, ()> {
|
||||
|
@ -109,9 +95,7 @@ impl JSValConvertible for i32 {
|
|||
|
||||
impl JSValConvertible for u32 {
|
||||
fn to_jsval(&self) -> JSVal {
|
||||
unsafe {
|
||||
RUST_UINT_TO_JSVAL(*self)
|
||||
}
|
||||
UInt32Value(*self)
|
||||
}
|
||||
|
||||
fn from_jsval(cx: *JSContext, val: JSVal) -> Result<u32, ()> {
|
||||
|
@ -172,7 +156,7 @@ impl<T: JSValConvertible> JSValConvertible for Option<T> {
|
|||
fn to_jsval(&self) -> JSVal {
|
||||
match self {
|
||||
&Some(ref value) => value.to_jsval(),
|
||||
&None => JSVAL_NULL,
|
||||
&None => NullValue(),
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue