summaryrefslogtreecommitdiff
path: root/BJC-Utils2/src/main/java/bjc/utils/parserutils
AgeCommit message (Collapse)Author
2017-09-11Minor changesBenjamin Culkin
2017-09-11Fix misc. compile errorsBenjamin J. Culkin
2017-09-11Add definesBenjamin J. Culkin
Defines are simple unary functions that apply replacements to strings. Currently, there are two types. * SimpleDefine - Replace all occurances of a pattern with a given string. * IteratedDefine - Replace occurances of a pattern with a string chosen from a series of strings.
2017-09-09UpdateBenjamin J. Culkin
Most of it is documentation changes. The rest is more work on BlockReaders, as well as a simple command language for configuring them.
2017-09-01CommentingBenjamin J. Culkin
2017-04-11More splittersbculkin2442
2017-04-11Remove old splittersbculkin2442
2017-04-10Cleanupbculkin2442
2017-04-10Warning resolutionbculkin2442
2017-04-10Allow varargs passing for exclusionsbjculkin
2017-04-07New splitter implementationbjculkin
2017-04-07Add simple toggle valuesbjculkin
2017-04-07Fix property bugsstudent
2017-04-07Cleanupbjculkin
2017-04-06Convert doubles to propertiesbjculkin
2017-04-06More propertiesbjculkin
2017-04-06Add simple lock w/ lambda capabilitiesbjculkin
2017-03-31Move Pratt Parser to new projectbjculkin
2017-03-27Minor updatebculkin2442
2017-03-27Simplificationsbjculkin
2017-03-26Updatebculkin2442
2017-03-25Separate general I/O from parsing.bculkin2442
2017-03-25Update Pratt parserbculkin2442
2017-03-25General cleanupbculkin2442
2017-03-24Update Pratt Parserbjculkin
2017-03-24Update Pratt Parserbjculkin
2017-03-24Update Pratt parserstudent
2017-03-24Update Pratt parser.bjculkin
2017-03-24Implement Pratt parser.bjculkin
2017-03-23Add forgetful groups.bjculkin
Forgetful groups are groups which reset the currently allowed nested openers/closers from enclosing groups. This is useful for things like quoted strings, where you don't want groups to open inside them. As a consequence, this also adds nested openers. However, predicated openers/closers cannot be nested.
2017-03-22Fix Block toStringbjculkin
The toString for block had the start/end lines backwards :-(
2017-03-22Updatebjculkin
2017-03-20Add BlockReaderbjculkin
Adds BlockReader, which allows you to read blocks of characters delimited by a given sequence from an arbitrary input source. It provides line numbering relative to that source, as well as block numbering. The main caveat is that to prevent spurious NoSuchElementExceptions, EOF is always treated as a valid delimiter, so blocks may be shorter than you expect them to be. This is only meant as a data input utility, not a data validation utility.
2017-03-20Add sample predicated openers/closersbjculkin
This adds a sample predicated opener/closer pair based off of regular expressions. The opener accepts a regular expression and will provide all of its numbered captured groups. The closer accepts a format string and uses the parameters (capture groups) as the format parameters.
2017-03-20Move delimiter stuff to a new packagebjculkin
2017-03-20Add more features to sequence delimiter.bjculkin
Two main features were added. One, various sequence closers can imply a subgroup. This is mainly useful in contexts like arrays, where you want one subgroup per array element. Two, predicated opening/closing delimiters. These allow having both an infinite set of opening delimiters, as well as having a set of closers that is both infinite and dependant on what the opener was. Note, however, that predicated openers and closers will be slower than using normal openers/closers, since every one has to be tried to check if a token is a opener/closer.
2017-03-20Move openers into groups, not globalbjculkin
2017-03-20Minor testing reorgstudent
2017-03-20Test removeDQuotedStringsstudent
2017-03-20Start work on testing.bjculkin
2017-03-19Fix subgroups.bjculkin
This fixes subgroups, by mostly rewriting the way the delimiter works.
2017-03-18Attempt to get subgroups workingbjculkin
2017-03-18Add ability to use subgroups for sequences.bjculkin
Subgroups are essentially things like the , in a function call. Now, you should be able to properly have function call arguments marked for you.
2017-03-17Move parsing utilities.bjculkin
Moved the parsing utilities SequenceDelimiter and TokenSplitter to the parserutils package, instead of the funcutils package.
2017-03-17Refactor StringUtilsbjculkin
Moved a bunch of token-oriented stuff from StringUtils to a new TokenUtils class.
2017-03-14CleanupEVE
2017-03-13FormattingEVE
2017-02-09Updatebculkin2442
2017-02-06Minor changesbculkin2442
2017-02-05Grammar optimizationbculkin2442
Grammars now only consider things in []'s as rule references