{ psiPackage = 'org.jetbrains.markdown' psiImplPackage = 'org.jetbrains.markdown.impl' parserClass="org.jetbrains.markdown.MarkdownParser" parserUtilClass="org.jetbrains.dokka.Markdown.GeneratedParserUtilBase" elementTypeHolderClass = 'org.jetbrains.markdown.MarkdownElementTypes' tokenTypeClass = 'org.jetbrains.dokka.Markdown.MarkdownTokenType' generatePsi = false tokens=[ LINE_WS='regexp:[\ \t\f]' EOL='"\r"|"\n"|"\r\n"' BOM = '\357\273\277' Number='regexp:\d+(\.\d*)?' String='regexp:[^~\*_`&\[\]()>) | (OptionalSpace <>) private Indent ::= "\t" | " " NonblankIndentedLine ::= !BlankLine IndentedLine IndentedLine ::= Indent PlainText // ---- BLOCKS ---- private Block ::= BlankLine* ( Para | Verbatim | OrderedList | BulletList | Inlines ) Para ::= NonindentSpace Inlines (BlankLine | TerminalEndline) Verbatim ::= VerbatimItem+ VerbatimItem ::= BlankLine* NonblankIndentedLine HorizontalRule ::= NonindentSpace ( '*' OptionalSpace '*' OptionalSpace '*' (OptionalSpace '*')* | '-' OptionalSpace '-' OptionalSpace '-' (OptionalSpace '-')* | '_' OptionalSpace '_' OptionalSpace '_' (OptionalSpace '_')*) OptionalSpace Newline BlankLine+ Bullet ::= !HorizontalRule NonindentSpace ('+' | '*' | '-') Spacechar+ Enumerator ::= NonindentSpace Number '.' Spacechar+ BulletList ::= &Bullet List OrderedList ::= &Enumerator List private List ::= (ListItem BlankLine*)+ ListItem ::= (Bullet | Enumerator) ListBlock ( ListContinuationBlock )* ListBlock ::= !BlankLine Inlines ( ListBlockLine )* ListBlockLine ::= !BlankLine !(Indent? (Bullet | Enumerator)) !HorizontalRule Indent? Inlines ListContinuationBlock ::= BlankLine* (Indent ListBlock)+ // ---- INLINES ---- private Inlines ::= (!EndLine Inline | EndLine &Inline )+ EndLine? private Inline ::= Strong | Emph | Link | PlainText PlainText ::= (String | Number | Spacechar)+ Emph ::= EmphStar | EmphUnderscore private EmphStar ::= '*' !Whitespace (!'*' Inline)+ '*' private EmphUnderscore ::= '_' !Whitespace (!'_' Inline)+ '_' Strong ::= StrongStar | StrongUnderscore StrongStar ::= '**' !Whitespace (!'**' Inline)+ '**' StrongUnderscore ::= '__' !Whitespace (!'__' Inline)+ '__' Link ::= HrefLink | ReferenceLink private ReferenceLink ::= '[' Target ']' private HrefLink ::= '[' Target ']' '(' Href ')' Target ::= String Href ::= String