@@ -628,14 +628,16 @@ function parse(source, root, options) {
628
628
}
629
629
630
630
function parseOption ( parent , token ) {
631
- if ( featuresRefRe . test ( token = next ( ) ) ) {
631
+ // console.log(featuresRefRe.test(token = next()))
632
+ if ( featuresRefRe . test ( peek ( ) ) ) {
633
+ var token = next ( ) ;
632
634
var name = token . match ( featuresRefRe ) [ 1 ]
633
635
skip ( "=" ) ;
634
636
setFeature ( parent , name , token = next ( ) )
635
637
} else {
636
- var isCustom = skip ( "(" , true ) ;
637
- if ( ! typeRefRe . test ( token = next ( ) ) )
638
- throw illegal ( token , "name" ) ;
638
+ var isCustom = skip ( "(" , true ) ;
639
+ if ( ! typeRefRe . test ( token = next ( ) ) )
640
+ throw illegal ( token , "name" ) ;
639
641
640
642
641
643
var name = token ;
@@ -647,13 +649,15 @@ function parse(source, root, options) {
647
649
name = "(" + name + ")" ;
648
650
option = name ;
649
651
token = peek ( ) ;
652
+ console . log ( 'in custom?' + token )
650
653
if ( fqTypeRefRe . test ( token ) ) {
651
654
propName = token . slice ( 1 ) ; //remove '.' before property name
652
655
name += token ;
653
656
next ( ) ;
654
657
}
655
658
}
656
659
660
+ console . log ( token )
657
661
skip ( "=" ) ;
658
662
var optionValue = parseOptionValue ( parent , name ) ;
659
663
setParsedOption ( parent , option , optionValue , propName ) ;
@@ -893,7 +897,7 @@ function parse(source, root, options) {
893
897
break ;
894
898
895
899
case "option" :
896
- parseCommon ( ptr , token ) ;
900
+ parseOption ( ptr , token ) ;
897
901
skip ( ";" , true ) ;
898
902
break ;
899
903
0 commit comments