aboutsummaryrefslogtreecommitdiffstats
path: root/components/script
diff options
context:
space:
mode:
authorNikhil Shagrithaya <nikhilshagri@gmail.com>2017-06-22 00:40:21 +0530
committerNikhil Shagrithaya <nikhilshagri@gmail.com>2017-06-22 00:40:21 +0530
commit48e04d8d8fdfd8219bc34987e73a1e8f7705d5ff (patch)
tree2ed80a9d865a330934ada7b11a0738cc02d38366 /components/script
parente41b7d06b473544755902be2c1334a7622c84940 (diff)
downloadservo-48e04d8d8fdfd8219bc34987e73a1e8f7705d5ff.tar.gz
servo-48e04d8d8fdfd8219bc34987e73a1e8f7705d5ff.zip
Remove target and data fields from parse_node_data
Diffstat (limited to 'components/script')
-rw-r--r--components/script/dom/servoparser/async_html.rs25
1 files changed, 6 insertions, 19 deletions
diff --git a/components/script/dom/servoparser/async_html.rs b/components/script/dom/servoparser/async_html.rs
index e13f8169faa..e1632ffaf3c 100644
--- a/components/script/dom/servoparser/async_html.rs
+++ b/components/script/dom/servoparser/async_html.rs
@@ -138,8 +138,6 @@ pub struct ParseNode {
#[derive(JSTraceable, HeapSizeOf)]
struct ParseNodeData {
- target: Option<String>,
- data: Option<String>,
contents: Option<ParseNode>,
is_integration_point: bool,
}
@@ -147,8 +145,6 @@ struct ParseNodeData {
impl Default for ParseNodeData {
fn default() -> ParseNodeData {
ParseNodeData {
- target: None,
- data: None,
contents: None,
is_integration_point: false,
}
@@ -169,7 +165,7 @@ enum ParseOperation {
MarkScriptAlreadyStarted(ParseNodeID),
ReparentChildren(ParseNodeID, ParseNodeID),
AssociateWithForm(ParseNodeID, ParseNodeID),
- CreatePI(ParseNodeID),
+ CreatePI(ParseNodeID, StrTendril, StrTendril),
Pop(ParseNodeID),
}
@@ -329,15 +325,11 @@ impl Sink {
ParseOperation::Pop(node) => {
vtable_for(self.get_node(&node)).pop();
}
- ParseOperation::CreatePI(node) => {
- let pi;
- {
- let data = self.get_parse_node_data(&node);
- pi = ProcessingInstruction::new(
- DOMString::from(data.target.clone().unwrap()),
- DOMString::from(data.data.clone().unwrap()),
+ ParseOperation::CreatePI(node, target, data) => {
+ let pi = ProcessingInstruction::new(
+ DOMString::from(String::from(target)),
+ DOMString::from(String::from(data)),
document);
- }
self.insert_node(node, JS::from_ref(pi.upcast()));
}
}
@@ -411,12 +403,7 @@ impl TreeSink for Sink {
fn create_pi(&mut self, target: StrTendril, data: StrTendril) -> ParseNode {
let node = self.new_parse_node();
- {
- let mut node_data = self.get_parse_node_data_mut(&node.id);
- node_data.target = Some(String::from(target));
- node_data.data = Some(String::from(data));
- }
- self.process_operation(ParseOperation::CreatePI(node.id));
+ self.process_operation(ParseOperation::CreatePI(node.id, target, data));
node
}