mirror of
https://github.com/servo/servo.git
synced 2025-07-22 23:03:42 +01:00
Make NodeTypeId include CharacterData variant
NodeTypeId is supposed to reflect the WebIDL inheritance hierarchy. All of Text/ProcessingInstruction/Comment inherit from CharacterData, which inherits from Node. There should be a CharacterDataTypeId value that differentiates between those, instead.
This commit is contained in:
parent
1e150140bd
commit
f404853c99
9 changed files with 67 additions and 78 deletions
|
@ -6,7 +6,7 @@ use dom::bindings::codegen::Bindings::ProcessingInstructionBinding;
|
|||
use dom::bindings::codegen::Bindings::ProcessingInstructionBinding::ProcessingInstructionMethods;
|
||||
use dom::bindings::codegen::InheritTypes::ProcessingInstructionDerived;
|
||||
use dom::bindings::js::{JSRef, Temporary};
|
||||
use dom::characterdata::CharacterData;
|
||||
use dom::characterdata::{CharacterData, CharacterDataTypeId};
|
||||
use dom::document::Document;
|
||||
use dom::eventtarget::{EventTarget, EventTargetTypeId};
|
||||
use dom::node::{Node, NodeTypeId};
|
||||
|
@ -21,14 +21,14 @@ pub struct ProcessingInstruction {
|
|||
|
||||
impl ProcessingInstructionDerived for EventTarget {
|
||||
fn is_processinginstruction(&self) -> bool {
|
||||
*self.type_id() == EventTargetTypeId::Node(NodeTypeId::ProcessingInstruction)
|
||||
*self.type_id() == EventTargetTypeId::Node(NodeTypeId::CharacterData(CharacterDataTypeId::ProcessingInstruction))
|
||||
}
|
||||
}
|
||||
|
||||
impl ProcessingInstruction {
|
||||
fn new_inherited(target: DOMString, data: DOMString, document: JSRef<Document>) -> ProcessingInstruction {
|
||||
ProcessingInstruction {
|
||||
characterdata: CharacterData::new_inherited(NodeTypeId::ProcessingInstruction, data, document),
|
||||
characterdata: CharacterData::new_inherited(CharacterDataTypeId::ProcessingInstruction, data, document),
|
||||
target: target
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue