<commit_before>##LANGUAGE 'GNU Make'
##ENGINE-NAME 'MyBuild'
##TEMPLATE-NAME 'Parser tables'
##AUTHOR '<NAME>'
##FILE-EXTENSION 'mk'
##NOTES
This template outputs all necessary tables for the parser.
In general you have to name this file the same as base name of the main script
with '-tables' suffix.

You should not modify the generated file.
##END-NOTES
##ID-SEPARATOR '_'
# Generated by GOLD Parser Builder using MyBuild program template. Do not edit!

##PARAMETERS
# Grammar info:
#   Name            : %Name%
#   Version         : %Version%
#   Author          : %Author%
#   About           : %About%
#   Case Sensitive  : %CaseSensitive%
#   Start Symbol    : %StartSymbol%
##END-PARAMETERS

ifndef gold_grammar
$(error 'gold_grammar' is not defined. \
	Do not include $(notdir $(lastword $(MAKEFILE_LIST))) directly!)
endif # gold_grammar

# Contains all necessary tables.
define __gold_$(gold_grammar)_parser
	$(gold-parser \
##SYMBOL-TABLE
		$(gold-symbol-table \
		# 	$(gold-symbol <ID>,
		# 		<Type>,
		# 		<Function name>
		# 	),
##SYMBOLS
			$(gold-symbol %Index%,%Kind%,# %Description%
				%ID%),
##END-SYMBOLS
		),# Total %Count% symbol(s).
##END-SYMBOL-TABLE

##RULE-TABLE
		$(gold-rule-table \
		# 	$(gold-rule <ID>,
		# 		<LHS nonterminal ID>,
		# 		<RHS total symbols>,
		# 		<Function name>
		# 	),
##RULES
			$(gold-rule %Index%,%NonterminalIndex%,%SymbolCount%,# %Description%
				%ID%),
##END-RULES
		),# Total %Count% rule(s).
##END-RULE-TABLE

##CHAR-SET-TABLE
		$(gold-charset-table \
		# 	$(gold-charset <ID>,
		# 		<List of chars>
		# 	),
##CHAR-SETS
##RANGE-CHARS '.'
##DELIMITER ';'
			$(gold-charset %Index%,# %Chars.XML% #
				%Chars.RangeList%),
##END-CHAR-SETS
		),# Total %Count% charset(s).
##END-CHAR-SET-TABLE

##DFA-TABLE
		$(gold-dfa-table %InitialState%,
		# 	$(gold-dfa-state <ID>,
		# 		<Accept symbol ID or -1>
		# 		$(gold-dfa-edge <Charset ID>,
		# 			<Target state ID>
		# 		),
		# 		...
		# 	),
##DFA-STATES
			$(gold-dfa-state %Index%,%AcceptIndex%,
##DFA-EDGES
				$(gold-dfa-edge %CharSetIndex%,%Target%),
##END-DFA-EDGES
			),# Total %EdgeCount% edge(s).
##END-DFA-STATES
		),# Total %Count% DFA state(s).
##END-DFA-TABLE

##LALR-TABLE
		$(gold-lalr-table %InitialState%,# <- Initial state
		# 	$(gold-lalr-state <ID>,
		# 		$(gold-lalr-action <Symbol ID>,
		# 			<Action>,
		# 			<Value>
		# 		),
		# 		...
		# 	),
##LALR-STATES
			$(gold-lalr-state %Index%,
##LALR-ACTIONS
				$(gold-lalr-action %SymbolIndex%,%Action%,%Value%),
##END-LALR-ACTIONS
			),# Total %ActionCount% action(s).
##END-LALR-STATES
		)# Total %Count% LALR state(s).
##END-LALR-TABLE

	)
endef # __gold_$(gold_grammar)_parser

$(def_all)
<commit_msg>More compact parser tables (about 25% less size)<commit_after>##LANGUAGE 'GNU Make'
##ENGINE-NAME 'MyBuild'
##TEMPLATE-NAME 'Parser tables'
##AUTHOR '<NAME>'
##FILE-EXTENSION 'mk'
##NOTES
This template outputs all necessary tables for the parser.
In general you have to name this file the same as base name of the main script
with '-tables' suffix.

You should not modify the generated file.
##END-NOTES
##ID-SEPARATOR '_'
# Generated by GOLD Parser Builder using MyBuild program template. Do not edit!

##PARAMETERS
# Grammar info:
#   Name            : %Name%
#   Version         : %Version%
#   Author          : %Author%
#   About           : %About%
#   Case Sensitive  : %CaseSensitive%
#   Start Symbol    : %StartSymbol%
##END-PARAMETERS

ifndef gold_grammar
$(error 'gold_grammar' is not defined. \
	Do not include $(notdir $(lastword $(MAKEFILE_LIST))) directly!)
endif # gold_grammar

# Contains all necessary tables.
define __gold_$(gold_grammar)_parser
	$(gold-parser \
##SYMBOL-TABLE
		$(gold-symbol-table \
		# 	$(gold-symbol <ID>,
		# 		<Type>,
		# 		<Function name>
		# 	),
##SYMBOLS
			$(gold-symbol %Index%,%Kind%,%ID%),
##END-SYMBOLS
		),# Total %Count% symbol(s).
##END-SYMBOL-TABLE

##RULE-TABLE
		$(gold-rule-table \
		# 	$(gold-rule <ID>,
		# 		<LHS nonterminal ID>,
		# 		<RHS total symbols>,
		# 		<Function name>
		# 	),
##RULES
			$(gold-rule %Index%,%NonterminalIndex%,%SymbolCount%,%ID%),
##END-RULES
		),# Total %Count% rule(s).
##END-RULE-TABLE

##CHAR-SET-TABLE
		$(gold-charset-table \
		# 	$(gold-charset <ID>,
		# 		<List of chars>
		# 	),
##CHAR-SETS
##RANGE-CHARS '.'
##DELIMITER ';'
			$(gold-charset %Index%,%Chars.RangeList%),
##END-CHAR-SETS
		),# Total %Count% charset(s).
##END-CHAR-SET-TABLE

##DFA-TABLE
		$(gold-dfa-table %InitialState%,
		# 	$(gold-dfa-state <ID>,
		# 		<Accept symbol ID or -1>
		# 		$(gold-dfa-edge <Charset ID>,
		# 			<Target state ID>
		# 		),
		# 		...
		# 	),
			$(gold-void \
##DFA-STATES
			),$(gold-dfa-state %Index%,%AcceptIndex%,
##DFA-EDGES
				$(gold-dfa-edge %CharSetIndex%,%Target%),
##END-DFA-EDGES
##END-DFA-STATES
			)
		),# Total %Count% DFA state(s).
##END-DFA-TABLE

##LALR-TABLE
		$(gold-lalr-table %InitialState%,# <- Initial state
		# 	$(gold-lalr-state <ID>,
		# 		$(gold-lalr-action <Symbol ID>,
		# 			<Action>,
		# 			<Value>
		# 		),
		# 		...
		# 	),
			$(gold-void \
##LALR-STATES
			),$(gold-lalr-state %Index%,
##LALR-ACTIONS
				$(gold-lalr-action %SymbolIndex%,%Action%,%Value%),
##END-LALR-ACTIONS
##END-LALR-STATES
			)
		)# Total %Count% LALR state(s).
##END-LALR-TABLE

	)
endef # __gold_$(gold_grammar)_parser

$(def_all)

{'fraction_non_alphanumeric': 0.1877474081055608, 'fraction_numerical': 0.0007540056550424129, 'mean_word_length': 3.2721417069243155, 'pattern_counts': {'":': 0, '<': 41, '<?xml version=': 0, '>': 39, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '496058', 'n_tokens_mistral': 2296, 'n_tokens_neox': 2098, 'n_words': 447}