nl_tokens: Called after consuming <zc - $ { directive_name }
pl_tokens: function consume_directive_tag ( proc_stack , tag_name ) { let <mask> = proc_stack . _tGetNPos ( ) - tag_name . length ; let directive_name = tag_name . slice ( 3 ) ; let raw_args = { } ; proc_stack . tSkipWhile ( WHITESPACE ) ; while ( ! proc_stack . tSkipIf ( ">" ) ) { let arg_name = proc_stack . tAcceptUntil ( "=" ) ; proc_stack . tSkip ( ) ; if ( ! proc_stack . tSkipIf ( "\"" ) ) { throw new SyntaxError ( ` ` ) ; } raw_args [ arg_name ] = consume_char_data_with_entity_directives ( proc_stack , true , "\"" ) ; proc_stack . tSkip ( ) ; proc_stack . tSkipWhile ( WHITESPACE ) ; } let closing_tag = ` ${ directive_name } ` ; // HTML entities in content will not be decoded (i.e. treat all HTML as text) if ( raw_args . value != null ) { throw new SyntaxError ( "Value argument provided as attribute" ) ; } raw_args . value = consume_html_content ( proc_stack , closing_tag ) ; proc_stack . tSkip ( closing_tag . length ) ; return new DirectiveExpr ( proc_stack , pos , directive_name , raw_args ) ; }