Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CSSRule, CSSRuleList, CSSStyleSheet partial implementation #10765

Closed
wants to merge 32 commits into from

Conversation

@Ishabobra
Copy link

Ishabobra commented Apr 20, 2016

We need inputs as to how to move ahead from here ?


This change is Reviewable

@highfive
Copy link

highfive commented Apr 20, 2016

Thanks for the pull request, and welcome! The Servo team is excited to review your changes, and you should hear from @larsbergstrom (or someone else) soon.

@highfive
Copy link

highfive commented Apr 20, 2016

Heads up! This PR modifies the following files:

  • @KiChjang: components/script/dom/cssrule.rs, components/script/dom/document.rs, components/script/dom/cssrulelist.rs, components/script/dom/mod.rs, components/script/dom/webidls/CSSStyleSheet.webidl, components/script/dom/webidls/CSSRule.webidl, components/script/dom/cssstylesheet.rs, components/script/dom/webidls/CSSRuleList.webidl
@highfive
Copy link

highfive commented Apr 20, 2016

warning Warning warning

  • These commits modify script code, but no tests are modified. Please consider adding a test!
@jdm jdm assigned jdm and unassigned wafflespeanut Apr 20, 2016
@jdm
Copy link
Member

jdm commented Apr 20, 2016

Next steps:

  • add an owner: Option<JS<Node>> field to StyleSheet, and make StyleSheetList call the get_nth_cssstylesheet method discussed in document.rs using the appropriate node from Document::stylesheets
  • implement the ownerNode attribute of StyleSheet
  • implement the cssRules attribute of CSSStyleSheet (leave a TODO for the origin-clean stuff) that returns a new instance of CSSRuleList
  • make the Item method of CSSRuleList return a new instance of a CSSRule, based on the rules method of the non-DOM Stylesheet type.

Basically, our goal for this project is to create the correct associations between the various DOM reflection types (Stylesheet/CSSStyleSheet, CSSRule, CSSRuleList, StyleSheetList) and the underlying data (Stylesheet, CSSRule). Does that make sense?

-S-awaiting-review +S-needs-code-changes


Reviewed 8 of 8 files at r1.
Review status: all files reviewed at latest revision, 11 unresolved discussions, some commit checks failed.


components/script/dom/cssrule.rs, line 26 [r1] (raw file):
We should store an instance of CSSRule here instead (note: it will need to be imported as use style::stylesheets and used as stylesheets::CSSRule since it overlaps with the DOM name).


components/script/dom/cssrule.rs, line 27 [r1] (raw file):
Let's remove bits that are just commented out right now.


components/script/dom/cssrule.rs, line 32 [r1] (raw file):
This should be the CSSRule from above.


components/script/dom/cssrule.rs, line 52 [r1] (raw file):
This can match on the stored rule and return an appropriate constant from dom::bindings::codegen::Bindings::CSSRuleBinding::CSSRuleConstants.


components/script/dom/cssrulelist.rs, line 11 [r1] (raw file):
Let's remove this.


components/script/dom/cssrulelist.rs, line 18 [r1] (raw file):
This should be a JS<CSSStyleSheet> instead, since we want this rule list to point back to a DOM representation of a stylesheet, which in turn will have the up-to-date representation of the stylesheet this is reflecting.


components/script/dom/cssstylesheet.rs, line 15 [r1] (raw file):
Since CSSStyleSheet inherits from StyleSheet, the first field should be a StyleSheet value instead of a reflector.


components/script/dom/cssstylesheet.rs, line 16 [r1] (raw file):
This belongs in the StyleSheet struct instead of CSSStyleSheet.


components/script/dom/cssstylesheet.rs, line 45 [r1] (raw file):
I don't think we'll be able to implement this method for this project, so we should remove it for now.


components/script/dom/document.rs, line 1817 [r1] (raw file):
This should be get_nth_cssstylesheet, and return a new instance of CSSStyleSheet using the data that is in the stylesheets member, like the commented code appears to be doing.


components/script/dom/webidls/CSSRule.webidl, line 9 [r1] (raw file):
Why are these commented out?


Comments from Reviewable

@Ishabobra
Copy link
Author

Ishabobra commented Apr 21, 2016

Review status: all files reviewed at latest revision, 11 unresolved discussions, some commit checks failed.


components/script/dom/cssrule.rs, line 26 [r1] (raw file):
HI Josh, We are facing the following issue when we are using style::stylesheets

home/ibobra/Documents/ServoFork/servo/components/script/dom/cssrule.rs:19:11: 19:31 error: wrong number of type arguments: expected 1, found 0 [E0243]
/home/ibobra/Documents/ServoFork/servo/components/script/dom/cssrule.rs:19 rule: stylesheets::CSSRule,
^~~~~~~~~~~~~~~~~~~~
/home/ibobra/Documents/ServoFork/servo/components/script/dom/cssrule.rs:19:11: 19:31 help: run rustc --explain E0243 to see a detailed explanation
/home/ibobra/Documents/ServoFork/servo/components/script/dom/cssrule.rs:24:28: 24:48 error: wrong number of type arguments: expected 1, found 0 [E0243]
/home/ibobra/Documents/ServoFork/servo/components/script/dom/cssrule.rs:24 fn new_inherited(rule: stylesheets::CSSRule) -> CSSRule {
^~~~~~~~~~~~~~~~~~~~
/home/ibobra/Documents/ServoFork/servo/components/script/dom/cssrule.rs:24:28: 24:48 help: run rustc --explain E0243 to see a detailed explanation
/home/ibobra/Documents/ServoFork/servo/components/script/dom/cssrule.rs:32:39: 32:59 error: wrong number of type arguments: expected 1, found 0 [E0243]
/home/ibobra/Documents/ServoFork/servo/components/script/dom/cssrule.rs:32 pub fn new(window: &Window, rule: stylesheets::CSSRule) -> Root {
^~~~~~~~~~~~~~~~~~~~
/home/ibobra/Documents/ServoFork/servo/components/script/dom/cssrule.rs:32:39: 32:59 help: run rustc --explain E0243 to see a detailed explanation
error: aborting due to 3 previous errors
error: Could not compile script.


Comments from Reviewable

@Ishabobra
Copy link
Author

Ishabobra commented Apr 21, 2016

Review status: all files reviewed at latest revision, 11 unresolved discussions, some commit checks failed.


components/script/dom/cssrule.rs, line 52 [r1] (raw file):
Is this what you are asking us to do?

fn Type_(&self) -> u16 {

    if self.eq(self.rule){
       CSSRuleConstants::STYLE_RULE}

}


Comments from Reviewable

@jdm
Copy link
Member

jdm commented Apr 21, 2016

Review status: all files reviewed at latest revision, 11 unresolved discussions, some commit checks failed.


components/script/dom/cssrule.rs, line 26 [r1] (raw file):
Ah, you'll need to use CSSRule<ServoSelectorImpl> (http://doc.servo.org/selectors/parser/trait.SelectorImpl.html).


components/script/dom/cssrule.rs, line 52 [r1] (raw file):
You'll need to use a match statement instead.


Comments from Reviewable

@Ishabobra
Copy link
Author

Ishabobra commented Apr 21, 2016

Review status: all files reviewed at latest revision, 11 unresolved discussions, some commit checks failed.


components/script/dom/cssrule.rs, line 26 [r1] (raw file):
HI Josh, its giving this error now:

Compiling script v0.0.1 (file:///home/ibobra/Documents/ServoFork/servo/components/script)
/home/ibobra/Documents/ServoFork/servo/components/script/dom/cssrule.rs:20:5: 20:50 error: no method named trace found for type style::stylesheets::CSSRule<style::selector_impl::ServoSelectorImpl> in the current scope
/home/ibobra/Documents/ServoFork/servo/components/script/dom/cssrule.rs:20 rule: stylesheets::CSSRule,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ibobra/Documents/ServoFork/servo/components/script/dom/cssrule.rs:17:1: 17:14 note: in this expansion of #[derive_JSTraceable](defined in /home/ibobra/Documents/ServoFork/servo/components/script/dom/cssrule.rs)
/home/ibobra/Documents/ServoFork/servo/components/script/dom/cssrule.rs:20:5: 20:50 help: items from traits can only be used if the trait is implemented and in scope; the following trait defines an item trace, perhaps you need to implement it:
/home/ibobra/Documents/ServoFork/servo/components/script/dom/cssrule.rs:20:5: 20:50 help: candidate #1: dom::bindings::trace::JSTraceable
/home/ibobra/Documents/ServoFork/servo/components/script/dom/cssrule.rs:44:20: 44:29


Comments from Reviewable

@jdm
Copy link
Member

jdm commented Apr 21, 2016

Review status: all files reviewed at latest revision, 11 unresolved discussions, some commit checks failed.


components/script/dom/cssrule.rs, line 26 [r1] (raw file):
You'll need to add an appropriate no_jsmanaged_fields entry to dom/bindings/trace.rs to avoid this error.


Comments from Reviewable

@Ishabobra
Copy link
Author

Ishabobra commented Apr 21, 2016

Review status: all files reviewed at latest revision, 11 unresolved discussions, some commit checks failed.


components/script/dom/cssrule.rs, line 26 [r1] (raw file):
HI Josh,

I dont understand what would be the appropriate "no_jsmanaged_fields" entry.. tried a few like CSSRUle, ServoSelectorImpl etc.


Comments from Reviewable

@jdm
Copy link
Member

jdm commented Apr 21, 2016

Review status: all files reviewed at latest revision, 11 unresolved discussions, some commit checks failed.


components/script/dom/cssrule.rs, line 26 [r1] (raw file):
Any type that gets complained about for missing a trace method. Be sure to add it to the collection of use statements earlier as well.


Comments from Reviewable

@Ishabobra
Copy link
Author

Ishabobra commented Apr 22, 2016

Review status: all files reviewed at latest revision, 11 unresolved discussions, some commit checks failed.


components/script/dom/cssrule.rs, line 26 [r1] (raw file):
HI Josh, We were getting this error "error: no method named trace found for type style::stylesheets::CSSRulestyle::selector_impl::ServoSelectorImpl in the current scope"

so as per your directions we added:

no_jsmanaged_fields!(ServoSelectorImpl);
no_jsmanaged_fields!(CSSRule);
and
use style::selector_impl::ServoSelectorImpl;
use style::stylesheets::CSSRule;

But still we are stuck with the following error:

error: the trait bound ServoSelectorImpl: selectors::parser::SelectorImpl is not satisfied [E0277]
/home/ibobra/Documents/ServoFork/servo/components/script/dom/macros.rs:290 fn trace(&self, _: *mut ::js::jsapi::JSTracer) {
/home/ibobra/Documents/ServoFork/servo/components/script/dom/macros.rs:291 // Do nothing
/home/ibobra/Documents/ServoFork/servo/components/script/dom/macros.rs:292 }
/home/ibobra/Documents/ServoFork/servo/components/script/dom/bindings/trace.rs:331:1: 331:50 note: in this expansion of no_jsmanaged_fields! (defined in /home/ibobra/Documents/ServoFork/servo/components/script/dom/macros.rs)
/home/ibobra/Documents/ServoFork/servo/components/script/dom/macros.rs:290:13: 292:14 help: run rustc --explain E0277 to see a detailed explanation
/home/ibobra/Documents/ServoFork/servo/components/script/dom/macros.rs:290:13: 292:14 help: consider adding a where ServoSelectorImpl: selectors::parser::SelectorImpl bound
/home/ibobra/Documents/ServoFork/servo/components/script/dom/macros.rs:290:13: 292:14 note: required by style::stylesheets::CSSRule


Comments from Reviewable

@jdm
Copy link
Member

jdm commented Apr 22, 2016

Review status: all files reviewed at latest revision, 11 unresolved discussions, some commit checks failed.


components/script/dom/cssrule.rs, line 26 [r1] (raw file):
Fun! This is equivalent to the no_jsmanaged_fields and will compile instead:

impl JSTraceable for CSSRule<ServoSelectorImpl> {
    fn trace(&self, _: *mut JSTracer) {}
}

Comments from Reviewable

@Ishabobra
Copy link
Author

Ishabobra commented Apr 22, 2016

Review status: all files reviewed at latest revision, 11 unresolved discussions, some commit checks failed.


components/script/dom/cssrule.rs, line 52 [r1] (raw file):
Hi Josh,
I have created the CSSStyleRule.webidl and cssstylerule.rs to be used in type_ function. But this function refers to 6 other rules like CSSImportRule, CSSMediaRule etc. Do we make webidls and .rs for all these rules too???


Comments from Reviewable

@jdm
Copy link
Member

jdm commented Apr 22, 2016

Review status: all files reviewed at latest revision, 11 unresolved discussions, some commit checks failed.


components/script/dom/cssrule.rs, line 52 [r1] (raw file):
In the future, yes. For the purposes of this project it should not be necessary.


Comments from Reviewable

@Ishabobra
Copy link
Author

Ishabobra commented Apr 22, 2016

Reviewed 1 of 8 files at r1.
Review status: all files reviewed at latest revision, 10 unresolved discussions, some commit checks failed.


components/script/dom/document.rs, line 1817 [r1] (raw file):
HI Josh,

We have finally written the function as

pub fn get_nth_cssstylesheet(&self, index: u32) -> Root<CSSStyleSheet> {

        let mut stylesheets = self.stylesheets.borrow_mut();
        let (ref mut node, ref mut sheet) = (*self.stylesheets.borrow()).unwrap()[index as usize];
        CSSStyleSheet::new(&self.window, *sheet, ? )
    }

What should be given as the 3rd parameter in "CSSStyleSheet::new". I have marked it with a "?".
The type of the 3rd parameter is CSSRuleList. The new function we have written for CSSStyleSheet is pasted here:

#[allow(unrooted_must_root)]
    pub fn new(window: &Window, stylesheet: Arc<Stylesheet>, cssrules: Root<CSSRuleList>) -> Root<CSSStyleSheet> {
        reflect_dom_object(box CSSStyleSheet::new_inherited(stylesheet, cssrules),
                           GlobalRef::Window(window),
                           CSSStyleSheetBinding::Wrap)
    }

Comments from Reviewable

@Ishabobra
Copy link
Author

Ishabobra commented Apr 22, 2016

Review status: all files reviewed at latest revision, 10 unresolved discussions, some commit checks failed.


components/script/dom/webidls/CSSRule.webidl, line 9 [r1] (raw file):
Uncommented it!


Comments from Reviewable

@jdm
Copy link
Member

jdm commented Apr 22, 2016

Review status: all files reviewed at latest revision, 9 unresolved discussions, some commit checks failed.


components/script/dom/document.rs, line 1817 [r1] (raw file):
I'm not sure that it makes sense for CSSStyleSheet's constructor to accept a CSSRuleList argument. I think it makes more sense for CSSStyleSheet to return new instances of CSSRuleList from the cssRules method instead. CSSStyleSheet should accept a &Node argument, though, so that it can be stored by the StyleSheet constructor that needs to be called from the CSSStyleSheet constructor.


Comments from Reviewable

@Ishabobra
Copy link
Author

Ishabobra commented Apr 22, 2016

Review status: all files reviewed at latest revision, 9 unresolved discussions, some commit checks failed.


components/script/dom/cssstylesheet.rs, line 16 [r1] (raw file):
But the instructions say : create the CSSStyleSheet interface, containing an Arc<Stylesheet> member.


Comments from Reviewable

@Ishabobra
Copy link
Author

Ishabobra commented Apr 22, 2016

Review status: all files reviewed at latest revision, 9 unresolved discussions, some commit checks failed.


components/script/dom/cssstylesheet.rs, line 15 [r1] (raw file):
When I kept reflector below stylesheet, I got an error saying reflector should always be the first entry id domStruct. So I kept it as it is as of now.


Comments from Reviewable

@jdm
Copy link
Member

jdm commented Apr 22, 2016

Review status: all files reviewed at latest revision, 9 unresolved discussions, some commit checks failed.


components/script/dom/cssstylesheet.rs, line 15 [r1] (raw file):
I meant that there should be no reflector member in this structure.


components/script/dom/cssstylesheet.rs, line 16 [r1] (raw file):
Ok, but I wrote those instructions and I am giving revised ones now.


Comments from Reviewable

@jdm
Copy link
Member

jdm commented Apr 22, 2016

Review status: all files reviewed at latest revision, 9 unresolved discussions, some commit checks failed.


components/script/dom/cssstylesheet.rs, line 16 [r1] (raw file):
Oh, wait. Disregard my original comment and the last one. It can stay here; I forgot that the StyleSheet interface doesn't need to use it.


Comments from Reviewable

@srm09 srm09 force-pushed the maalbash:sub branch from 7bb79a1 to 1ee1950 May 2, 2016
@srm09 srm09 force-pushed the maalbash:sub branch from 2ff2f59 to 6714691 May 2, 2016
@jdm
Copy link
Member

jdm commented May 2, 2016

Getting better :)
-S-awaiting-review +S-needs-code-changes


Reviewed 1 of 1 files at r12, 3 of 3 files at r13, 1 of 1 files at r14, 5 of 5 files at r15, 4 of 4 files at r16, 1 of 1 files at r17, 2 of 2 files at r18, 5 of 5 files at r19, 13 of 13 files at r20, 10 of 10 files at r21, 13 of 13 files at r22, 5 of 5 files at r23, 5 of 5 files at r24, 3 of 3 files at r25, 5 of 5 files at r26, 5 of 5 files at r27, 6 of 6 files at r28, 4 of 4 files at r29, 6 of 6 files at r30, 2 of 2 files at r31.
Review status: all files reviewed at latest revision, 9 unresolved discussions.


components/script/dom/cssstylerule.rs, line 26 [r30] (raw file):
Ah, this should actually be accepting a stylesheets::CSSRule value as an argument and passing that.


components/script/dom/cssstylerule.rs, line 32 [r30] (raw file):
Like above, accepting a styleseets::CSSRule argument here would be the way to go.


components/script/dom/cssstylesheet.rs, line 29 [r30] (raw file):
We should be passing a Some value to StyleSheet::new_inherited for the owner node, and we should accept it as an argument to new_inherited and new.


components/script/dom/cssstylesheet.rs, line 50 [r30] (raw file):
this can be simplified to CSSRuleList::new(&self.window, self) (no need for Root::from_ref)


components/script/dom/document.rs, line 1832 [r30] (raw file):
Why is this clone necessary?


components/script/dom/document.rs, line 1834 [r30] (raw file):
Can we do sheet.clone() here?


components/script/dom/stylesheet.rs, line 8 [r30] (raw file):
Let's make this use UnionTypes::ElementOrProcessingInstruction. Code can refer to ElementOrProcessingInstruction::Element or ElementOrProcessingInstruction::ProcessingInstruction as needed.


components/script/dom/stylesheet.rs, line 39 [r30] (raw file):
This can be written as owner.map(|node| JS::from_ref(node)) for compactness.


Comments from Reviewable

@jdm
Copy link
Member

jdm commented May 2, 2016

@bors-servo: try
Let's see what happens!

bors-servo added a commit that referenced this pull request May 2, 2016
CSSRule, CSSRuleList, CSSStyleSheet partial implementation

We need inputs as to how to move ahead from here ?

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/10765)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

bors-servo commented May 2, 2016

Trying commit 6714691 with merge 584a54b...

@bors-servo
Copy link
Contributor

bors-servo commented May 2, 2016

💔 Test failed - mac-rel-css

@highfive
Copy link

highfive commented May 2, 2016

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] StyleSheet interface: attribute ownerNode

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSStyleSheet interface: existence and properties of interface object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSStyleSheet interface object length

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSStyleSheet interface: existence and properties of interface prototype object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSStyleSheet interface: existence and properties of interface prototype object&#39;s &#34;constructor&#34; property

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSStyleSheet interface: attribute cssRules

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRuleList interface: existence and properties of interface object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRuleList interface object length

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRuleList interface: existence and properties of interface prototype object&#39;s &#34;constructor&#34; property

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRuleList interface: operation item(unsigned long)

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRuleList interface: attribute length

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: existence and properties of interface object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface object length

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: existence and properties of interface prototype object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: existence and properties of interface prototype object&#39;s &#34;constructor&#34; property

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: constant STYLE_RULE on interface object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: constant STYLE_RULE on interface prototype object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: constant CHARSET_RULE on interface object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: constant CHARSET_RULE on interface prototype object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: constant IMPORT_RULE on interface object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: constant IMPORT_RULE on interface prototype object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: constant MEDIA_RULE on interface object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: constant MEDIA_RULE on interface prototype object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: constant FONT_FACE_RULE on interface object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: constant FONT_FACE_RULE on interface prototype object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: constant PAGE_RULE on interface object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: constant PAGE_RULE on interface prototype object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: constant MARGIN_RULE on interface object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: constant MARGIN_RULE on interface prototype object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: constant NAMESPACE_RULE on interface object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSRule interface: constant NAMESPACE_RULE on interface prototype object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSStyleRule interface: existence and properties of interface object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSStyleRule interface object length

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSStyleRule interface: existence and properties of interface prototype object

  ▶ Unexpected subtest result in /cssom-1_dev/html/interfaces.htm:
  └ PASS [expected FAIL] CSSStyleRule interface: existence and properties of interface prototype object&#39;s &#34;constructor&#34; property
pranavkulkarni pranavkulkarni
@highfive
Copy link

highfive commented May 3, 2016

New code was committed to pull request.

@bors-servo
Copy link
Contributor

bors-servo commented May 23, 2016

The latest upstream changes (presumably #11225) made this pull request unmergeable. Please resolve the merge conflicts.

@jdm
Copy link
Member

jdm commented May 25, 2016

Thank you for working on this! I have noted this work in #11420 for anyone who takes on this effort. This work doesn't make sense to merge as-is, though, since the actual hierarchical relationships between the various DOM types aren't implemented.

@jdm jdm closed this May 25, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

7 participants
You can’t perform that action at this time.