aboutsummaryrefslogtreecommitdiffstats
path: root/components/style/parsing_utils.rs
diff options
context:
space:
mode:
authorGlenn Watson <gw@intuitionlibrary.com>2014-10-08 16:17:02 +1000
committerGlenn Watson <gw@intuitionlibrary.com>2014-10-15 07:36:31 +1000
commitc7d81fdde68c27a227133c48290e9d5a4fc8e209 (patch)
tree2f6ba8ad021d8ee5dd9ed0730b6bf62126284532 /components/style/parsing_utils.rs
parent0aeecfc41d5f0c637960fcddf87cc2db3e5efeea (diff)
downloadservo-c7d81fdde68c27a227133c48290e9d5a4fc8e209.tar.gz
servo-c7d81fdde68c27a227133c48290e9d5a4fc8e209.zip
Implement media queries parser and matching. Improves mobile first sites like bootstrap3.
Diffstat (limited to 'components/style/parsing_utils.rs')
-rw-r--r--components/style/parsing_utils.rs19
1 files changed, 19 insertions, 0 deletions
diff --git a/components/style/parsing_utils.rs b/components/style/parsing_utils.rs
index 1fd1034e117..c2f6cc04850 100644
--- a/components/style/parsing_utils.rs
+++ b/components/style/parsing_utils.rs
@@ -42,6 +42,25 @@ impl<E, I: Iterator<E>> BufferedIter<E, I> {
assert!(self.buffer.is_none());
self.buffer = Some(value);
}
+
+ #[inline]
+ pub fn is_eof(&mut self) -> bool {
+ match self.next() {
+ Some(value) => {
+ self.push_back(value);
+ false
+ }
+ None => true
+ }
+ }
+
+ #[inline]
+ pub fn next_as_result(&mut self) -> Result<E, ()> {
+ match self.next() {
+ Some(value) => Ok(value),
+ None => Err(()),
+ }
+ }
}
impl<E, I: Iterator<E>> Iterator<E> for BufferedIter<E, I> {