You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
32 lines
689 B
32 lines
689 B
export const name = 'Selector'; |
|
export const structure = { |
|
children: [[ |
|
'TypeSelector', |
|
'IdSelector', |
|
'ClassSelector', |
|
'AttributeSelector', |
|
'PseudoClassSelector', |
|
'PseudoElementSelector', |
|
'Combinator', |
|
'WhiteSpace' |
|
]] |
|
}; |
|
|
|
export function parse() { |
|
const children = this.readSequence(this.scope.Selector); |
|
|
|
// nothing were consumed |
|
if (this.getFirstListNode(children) === null) { |
|
this.error('Selector is expected'); |
|
} |
|
|
|
return { |
|
type: 'Selector', |
|
loc: this.getLocationFromList(children), |
|
children |
|
}; |
|
} |
|
|
|
export function generate(node) { |
|
this.children(node); |
|
}
|
|
|