From 49747b314db4d269a5dec055d22a0967a1a5a626 Mon Sep 17 00:00:00 2001 From: Ibrahim Wassouf Date: Tue, 4 Jul 2023 20:44:22 -0300 Subject: [PATCH] Modify wildcard state of tokens in lexer --- .../diagrams/class/parser/classDiagram.jison | 52 +++++++++---------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/packages/mermaid/src/diagrams/class/parser/classDiagram.jison b/packages/mermaid/src/diagrams/class/parser/classDiagram.jison index 7788fcc0c..a8b880c8e 100644 --- a/packages/mermaid/src/diagrams/class/parser/classDiagram.jison +++ b/packages/mermaid/src/diagrams/class/parser/classDiagram.jison @@ -72,14 +72,14 @@ accDescr\s*"{"\s* { this.begin("acc_descr_multili [\n] /* nothing */ [^{}\n]* { return "MEMBER";} -<*>"cssClass" return 'CSSCLASS'; -<*>"callback" return 'CALLBACK'; -<*>"link" return 'LINK'; -<*>"click" return 'CLICK'; -<*>"note for" return 'NOTE_FOR'; -<*>"note" return 'NOTE'; -<*>"<<" return 'ANNOTATION_START'; -<*>">>" return 'ANNOTATION_END'; +"cssClass" return 'CSSCLASS'; +"callback" return 'CALLBACK'; +"link" return 'LINK'; +"click" return 'CLICK'; +"note for" return 'NOTE_FOR'; +"note" return 'NOTE'; +"<<" return 'ANNOTATION_START'; +">>" return 'ANNOTATION_END'; /* ---interactivity command--- @@ -87,7 +87,7 @@ accDescr\s*"{"\s* { this.begin("acc_descr_multili line was introduced with 'click'. 'href ""' attaches the specified link to the node that was specified by 'click'. */ -<*>"href"[\s]+["] this.begin("href"); +"href"[\s]+["] this.begin("href"); ["] this.popState(); [^"]* return 'HREF'; @@ -99,7 +99,7 @@ the line was introduced with 'click'. arguments to the node that was specified by 'click'. Function arguments are optional: 'call ()' simply executes 'callback_name' without any arguments. */ -<*>"call"[\s]+ this.begin("callback_name"); +"call"[\s]+ this.begin("callback_name"); \([\s]*\) this.popState(); \( this.popState(); this.begin("callback_args"); [^(]* return 'CALLBACK_NAME'; @@ -108,7 +108,7 @@ Function arguments are optional: 'call ()' simply executes 'callb [~] this.popState(); [^~]* return "GENERICTYPE"; -<*>[~] this.begin("generic"); +"~" this.begin("generic"); ["] this.popState(); [^"]* return "STR"; @@ -116,20 +116,20 @@ Function arguments are optional: 'call ()' simply executes 'callb [`] this.popState(); [^`]+ return "BQUOTE_STR"; -<*>[`] this.begin("bqstring"); +[`] this.begin("bqstring"); -<*>"_self" return 'LINK_TARGET'; -<*>"_blank" return 'LINK_TARGET'; -<*>"_parent" return 'LINK_TARGET'; -<*>"_top" return 'LINK_TARGET'; +"_self" return 'LINK_TARGET'; +"_blank" return 'LINK_TARGET'; +"_parent" return 'LINK_TARGET'; +"_top" return 'LINK_TARGET'; -<*>\s*\<\| return 'EXTENSION'; -<*>\s*\|\> return 'EXTENSION'; -<*>\s*\> return 'DEPENDENCY'; -<*>\s*\< return 'DEPENDENCY'; -<*>\s*\* return 'COMPOSITION'; -<*>\s*o return 'AGGREGATION'; -<*>\s*\(\) return 'LOLLIPOP'; +\s*\<\| return 'EXTENSION'; +\s*\|\> return 'EXTENSION'; +\s*\> return 'DEPENDENCY'; +\s*\< return 'DEPENDENCY'; +\s*\* return 'COMPOSITION'; +\s*o return 'AGGREGATION'; +\s*\(\) return 'LOLLIPOP'; <*>\-\- return 'LINE'; <*>\.\. return 'DOTTED_LINE'; <*>":"{1}[^:\n;]+ return 'LABEL'; @@ -285,8 +285,8 @@ className : alphaNumToken { $$=$1; } | classLiteralName { $$=$1; } | alphaNumToken className { $$=$1+$2; } - | alphaNumToken GENERICTYPE { $$=$1+'~'+$2+'~'; } - | classLiteralName GENERICTYPE { $$=$1+'~'+$2+'~'; } + | alphaNumToken GENERICTYPE { $$=$1+"~"+$2+"~"; } + | classLiteralName GENERICTYPE { $$=$1+"~"+$2+"~"; } ; statement @@ -321,7 +321,7 @@ classStatements ; classStatement - : classIdentifier + : classIdentifier | classIdentifier STYLE_SEPARATOR alphaNumToken {yy.setCssClass($1, $3);} | classIdentifier STRUCT_START members STRUCT_STOP {yy.addMembers($1,$3);} | classIdentifier STYLE_SEPARATOR alphaNumToken STRUCT_START members STRUCT_STOP {yy.setCssClass($1, $3);yy.addMembers($1,$5);}