mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
Remove almost all uses of Heap::new.
This commit is contained in:
parent
f5eb8445b0
commit
77b3e911c1
4 changed files with 17 additions and 9 deletions
|
@ -6699,7 +6699,7 @@ class CallbackMember(CGNativeMember):
|
||||||
replacements["argCount"] = self.argCountStr
|
replacements["argCount"] = self.argCountStr
|
||||||
replacements["argvDecl"] = string.Template(
|
replacements["argvDecl"] = string.Template(
|
||||||
"rooted_vec!(let mut argv);\n"
|
"rooted_vec!(let mut argv);\n"
|
||||||
"argv.extend((0..${argCount}).map(|_| Heap::new(UndefinedValue())));\n"
|
"argv.extend((0..${argCount}).map(|_| Heap::default()));\n"
|
||||||
).substitute(replacements)
|
).substitute(replacements)
|
||||||
else:
|
else:
|
||||||
# Avoid weird 0-sized arrays
|
# Avoid weird 0-sized arrays
|
||||||
|
@ -6774,7 +6774,11 @@ class CallbackMember(CGNativeMember):
|
||||||
|
|
||||||
conversion = wrapForType(
|
conversion = wrapForType(
|
||||||
"argv_root.handle_mut()", result=argval,
|
"argv_root.handle_mut()", result=argval,
|
||||||
successCode="argv[%s] = Heap::new(argv_root.get());" % jsvalIndex,
|
successCode=("{\n" +
|
||||||
|
"let arg = &mut argv[%s];\n" +
|
||||||
|
"*arg = Heap::default();\n" +
|
||||||
|
"arg.set(argv_root.get());\n" +
|
||||||
|
"}") % jsvalIndex,
|
||||||
pre="rooted!(in(cx) let mut argv_root = UndefinedValue());")
|
pre="rooted!(in(cx) let mut argv_root = UndefinedValue());")
|
||||||
if arg.variadic:
|
if arg.variadic:
|
||||||
conversion = string.Template(
|
conversion = string.Template(
|
||||||
|
@ -6790,7 +6794,7 @@ class CallbackMember(CGNativeMember):
|
||||||
" // This is our current trailing argument; reduce argc\n"
|
" // This is our current trailing argument; reduce argc\n"
|
||||||
" argc -= 1;\n"
|
" argc -= 1;\n"
|
||||||
"} else {\n"
|
"} else {\n"
|
||||||
" argv[%d] = Heap::new(UndefinedValue());\n"
|
" argv[%d] = Heap::default();\n"
|
||||||
"}" % (i + 1, i))
|
"}" % (i + 1, i))
|
||||||
return conversion
|
return conversion
|
||||||
|
|
||||||
|
|
|
@ -132,7 +132,10 @@ fn key_and_value_return(cx: *mut JSContext,
|
||||||
value: HandleValue) -> Fallible<()> {
|
value: HandleValue) -> Fallible<()> {
|
||||||
let mut dict = unsafe { IterableKeyAndValueResult::empty(cx) };
|
let mut dict = unsafe { IterableKeyAndValueResult::empty(cx) };
|
||||||
dict.done = false;
|
dict.done = false;
|
||||||
dict.value = Some(vec![Heap::new(key.get()), Heap::new(value.get())]);
|
let values = vec![Heap::default(), Heap::default()];
|
||||||
|
values[0].set(key.get());
|
||||||
|
values[1].set(value.get());
|
||||||
|
dict.value = Some(values);
|
||||||
rooted!(in(cx) let mut dict_value = UndefinedValue());
|
rooted!(in(cx) let mut dict_value = UndefinedValue());
|
||||||
unsafe {
|
unsafe {
|
||||||
dict.to_jsval(cx, dict_value.handle_mut());
|
dict.to_jsval(cx, dict_value.handle_mut());
|
||||||
|
|
|
@ -339,8 +339,9 @@ impl FileReaderMethods for FileReader {
|
||||||
FileReaderResult::String(ref string) =>
|
FileReaderResult::String(ref string) =>
|
||||||
StringOrObject::String(string.clone()),
|
StringOrObject::String(string.clone()),
|
||||||
FileReaderResult::ArrayBuffer(ref arr_buffer) => {
|
FileReaderResult::ArrayBuffer(ref arr_buffer) => {
|
||||||
StringOrObject::Object(RootedTraceableBox::new(
|
let result = RootedTraceableBox::new(Heap::default());
|
||||||
Heap::new((*arr_buffer.ptr.get()).to_object())))
|
result.set((*arr_buffer.ptr.get()).to_object());
|
||||||
|
StringOrObject::Object(result)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
@ -340,12 +340,12 @@ impl TestBindingMethods for TestBinding {
|
||||||
fn ReceiveNullableSequence(&self) -> Option<Vec<i32>> { Some(vec![1]) }
|
fn ReceiveNullableSequence(&self) -> Option<Vec<i32>> { Some(vec![1]) }
|
||||||
fn ReceiveTestDictionaryWithSuccessOnKeyword(&self) -> RootedTraceableBox<TestDictionary> {
|
fn ReceiveTestDictionaryWithSuccessOnKeyword(&self) -> RootedTraceableBox<TestDictionary> {
|
||||||
RootedTraceableBox::new(TestDictionary {
|
RootedTraceableBox::new(TestDictionary {
|
||||||
anyValue: Heap::new(NullValue()),
|
anyValue: Heap::default(),
|
||||||
booleanValue: None,
|
booleanValue: None,
|
||||||
byteValue: None,
|
byteValue: None,
|
||||||
dict: RootedTraceableBox::new(TestDictionaryDefaults {
|
dict: RootedTraceableBox::new(TestDictionaryDefaults {
|
||||||
UnrestrictedDoubleValue: 0.0,
|
UnrestrictedDoubleValue: 0.0,
|
||||||
anyValue: Heap::new(NullValue()),
|
anyValue: Heap::default(),
|
||||||
booleanValue: false,
|
booleanValue: false,
|
||||||
bytestringValue: ByteString::new(vec![]),
|
bytestringValue: ByteString::new(vec![]),
|
||||||
byteValue: 0,
|
byteValue: 0,
|
||||||
|
@ -361,7 +361,7 @@ impl TestBindingMethods for TestBinding {
|
||||||
nullableFloatValue: None,
|
nullableFloatValue: None,
|
||||||
nullableLongLongValue: None,
|
nullableLongLongValue: None,
|
||||||
nullableLongValue: None,
|
nullableLongValue: None,
|
||||||
nullableObjectValue: Heap::new(ptr::null_mut()),
|
nullableObjectValue: Heap::default(),
|
||||||
nullableOctetValue: None,
|
nullableOctetValue: None,
|
||||||
nullableShortValue: None,
|
nullableShortValue: None,
|
||||||
nullableStringValue: None,
|
nullableStringValue: None,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue