112 Commits

Author SHA1 Message Date
60adffbbab Add rspec 2021-05-07 15:16:01 -04:00
b8c01ca1d1 Move Unit stuff from Imbecile::Regex to Imbecile::Regex::Unit 2021-05-07 15:10:51 -04:00
b04ff56308 Add Regex class 2021-05-02 15:22:45 -04:00
ca1d2d1e5c Fix class name determination from output file name 2021-05-01 17:01:15 -04:00
13403405b0 Add Error class to handle grammar loading errors 2021-05-01 16:54:24 -04:00
07dd68e367 Write output file from ERB template 2021-05-01 16:44:01 -04:00
c1666a1e74 Require output file on command line 2021-05-01 14:52:16 -04:00
768a0ef17f Extract class name from grammar file 2021-05-01 14:34:00 -04:00
9e865d1982 Throw error on unexpected grammar input line 2021-05-01 09:40:22 -04:00
9884047090 Skip blank lines 2021-05-01 09:39:19 -04:00
04393dcc51 Check for duplicate token names; skip comment lines 2021-05-01 09:38:08 -04:00
7f27b3fd6f Exit with CLI exit code 2021-05-01 09:34:38 -04:00
37ad87d602 Rename GrammarParser -> Grammar 2021-05-01 09:33:35 -04:00
23b7782a5d Begin parsing grammar 2021-05-01 09:31:12 -04:00
0cc4516c0e Add GrammarParser class to parse input file 2021-05-01 08:22:14 -04:00
75a1049040 Parse command-line options 2021-05-01 08:16:09 -04:00
a9ff93dda4 Add script to test run 2021-05-01 08:16:01 -04:00
d879a93d09 Add bin/imbecile and Imbecile::CLI module 2021-04-29 23:26:52 -04:00
ee27c5e9b1 Add Gemfile.lock 2021-04-29 23:26:37 -04:00
989e5f47de Edit some gemspec fields 2021-04-29 23:26:29 -04:00
04e17cde30 Add "bundle gem"-generated files 2021-04-29 23:22:23 -04:00
bc217e7ddb Start on ruby branch 2021-04-29 23:18:22 -04:00
Josh Holtrop
064bb94108 token data protected again by default now 2010-06-01 11:53:42 -04:00
Josh Holtrop
b689923475 user data in "public" section by default now; storing list of tokens in the generated parser for use later by the rules 2010-05-21 11:05:26 -04:00
Josh Holtrop
dfbd319329 fixed build test sscanf() arg order 2010-05-21 10:48:46 -04:00
Josh Holtrop
9055f591f9 execute test after building it 2010-05-21 10:27:27 -04:00
Josh Holtrop
3cdaa2e338 bugfix -- create Matches with longest_match_ovector not the temporary ovector 2010-05-21 10:27:16 -04:00
Josh Holtrop
3a3dc4074b added Token::m_type/setType()/getType(); changed Token::process() to accept a const reference to a Matches; updated build test 2010-05-21 10:22:37 -04:00
Josh Holtrop
5219989f2a added TokenDefinition::getClassName() 2010-05-21 10:01:31 -04:00
Josh Holtrop
3f3dd81e67 added TokenDefinition::getIdentifier() and replacement buildToken 2010-05-21 09:46:17 -04:00
Josh Holtrop
c6cc8e57d1 added token classes and token class process() methods to Imbecile-generated parser 2010-05-20 17:08:03 -04:00
Josh Holtrop
449a510671 re-worked defines in generated parser; writing TK_ #define's for token types now 2010-05-20 15:59:06 -04:00
Josh Holtrop
4ec500a2fb added token_data and token_code replacements for global Token information; added debug message for missing replacements 2010-05-20 15:27:08 -04:00
Josh Holtrop
62fd96ad9b updated replacement system 2010-05-19 16:50:36 -04:00
Josh Holtrop
ecfa1730f5 created replacement system for templates ("{%word%}" syntax) 2010-05-19 16:14:04 -04:00
Josh Holtrop
55b1e1494a renamed MatchSet to Matches 2010-05-19 14:30:15 -04:00
Josh Holtrop
b100c035a0 MatchSet updates 2010-05-19 14:06:02 -04:00
Josh Holtrop
3a0a7e494d added MatchSet class; Token::process() 2010-05-19 13:43:06 -04:00
Josh Holtrop
c0e88f5c6f changed token list to a STL list instead of a vector 2010-05-19 12:20:50 -04:00
Josh Holtrop
762ff3d561 added data gathering; changed the way gathering was done (now ${...$} and %{...%}); added continue_line in parseInputFile() 2010-05-19 12:00:06 -04:00
Josh Holtrop
b90b83ab0f renamed "ignored" flag to "process" in token definitions 2010-05-18 14:22:11 -04:00
Josh Holtrop
953796ec23 refactored into Parser::buildTokenList() 2010-05-17 16:26:42 -04:00
Josh Holtrop
89a414ff93 added "ignored" flag in TokenDefinition, parsing token flags now 2010-05-17 15:32:27 -04:00
Josh Holtrop
593c0d6cb6 including refptr in compiler include path; added split() and trim() in TokenDefinition.cc 2010-05-17 15:24:35 -04:00
Josh Holtrop
9d6ede6106 added refptr into tmpl/parser.h, added Node and Token classes to be generated 2010-05-17 15:13:22 -04:00
Josh Holtrop
2d563b9ea4 updated build test Makefile 2010-05-15 00:51:43 -04:00
Josh Holtrop
96010ea9ae lexer working with pcre, not building any objects for handling tokens yet 2010-05-15 00:43:55 -04:00
Josh Holtrop
25888fe55a building tmpl.h before dependency files 2010-05-14 22:30:48 -04:00
Josh Holtrop
edeb857c77 added I_TOKENLIST definition; build test now compiling 2010-05-11 16:33:22 -04:00
Josh Holtrop
b27a900b96 Parser::write() returning status; main() catching errors from Parser::parseInputFile() and Parser::write() 2010-05-11 15:14:56 -04:00