From 682f23e7bb4a52bedf46eff5c4859e1308eda124 Mon Sep 17 00:00:00 2001 From: Michał Cichoń Date: Tue, 25 Aug 2015 19:56:24 +0200 Subject: Update build ref --- vtparse/src/vtparse_check_tables.rb | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 vtparse/src/vtparse_check_tables.rb (limited to 'vtparse/src/vtparse_check_tables.rb') diff --git a/vtparse/src/vtparse_check_tables.rb b/vtparse/src/vtparse_check_tables.rb new file mode 100644 index 0000000..2bfa122 --- /dev/null +++ b/vtparse/src/vtparse_check_tables.rb @@ -0,0 +1,24 @@ + +require 'vtparse_tables' + +# +# check that for every state, there is a transition defined +# for every character between 0 and A0. +# + +table = {} + +anywhere_array = expand_ranges($states[:ANYWHERE]) + +$state_tables.each { |state, table| + next if state == :ANYWHERE + + table.each_with_index { |val, i| + if not (val or $state_tables[:ANYWHERE][i]) + raise "No transition defined from state #{state}, char 0x#{i.to_s(16)}!" + end + } +} + +puts "Tables had all necessary transitions defined." + -- cgit v1.2.3