()
| 5582 | } |
| 5583 | |
| 5584 | function styles() { |
| 5585 | var i; |
| 5586 | while (next_token.id === '@') { |
| 5587 | i = peek(); |
| 5588 | advance('@'); |
| 5589 | switch (next_token.string) { |
| 5590 | case 'import': |
| 5591 | advance_identifier('import'); |
| 5592 | if (!css_url()) { |
| 5593 | warn('expected_a_b', |
| 5594 | next_token, 'url', artifact()); |
| 5595 | advance(); |
| 5596 | } |
| 5597 | semicolon(); |
| 5598 | break; |
| 5599 | case 'media': |
| 5600 | advance_identifier('media'); |
| 5601 | for (;;) { |
| 5602 | if (!next_token.identifier || css_media[next_token.string] !== true) { |
| 5603 | stop('expected_media_a'); |
| 5604 | } |
| 5605 | advance(); |
| 5606 | if (next_token.id !== ',') { |
| 5607 | break; |
| 5608 | } |
| 5609 | comma(); |
| 5610 | } |
| 5611 | advance('{'); |
| 5612 | style_list(); |
| 5613 | advance('}'); |
| 5614 | break; |
| 5615 | case 'font-face': |
| 5616 | advance_identifier('font-face'); |
| 5617 | advance('{'); |
| 5618 | font_face(); |
| 5619 | advance('}'); |
| 5620 | break; |
| 5621 | default: |
| 5622 | stop('expected_at_a'); |
| 5623 | } |
| 5624 | } |
| 5625 | style_list(); |
| 5626 | } |
| 5627 | |
| 5628 | |
| 5629 | // Parse HTML |
no test coverage detected
searching dependent graphs…