Permalink
Commits on Jun 23, 2012
  1. updated examples

    committed Jun 23, 2012
  2. refactoring: InfiniteInput is removed, catching IndexError

    Some sources like string can be accessed much faster (up to several
    tens times faster) then objects where access operations are written on
    Python, so it is better to use 'em directly.
    
    Also cache_clear() and stat are fixed to avoid looping in cycles
    committed Jun 23, 2012
  3. cor: function to apply operation on graph

    graph can be with cycles, so temporary cookie is used to avoid loops
    committed Jun 23, 2012
  4. Revert "InfiniteInput optimization - end retrieval caching"

    This reverts commit e4af467.
    committed Jun 23, 2012
  5. InfiniteInput: limit for parsing files up to 128Mb

    this limit should be removed later
    committed Jun 23, 2012
  6. adding option to generate matching statistics

    options.is_stat = True. rule property stat returns vector of
    parsing_stat elements where each parsing_stat element is a
    tuple (rule_name, rule_stat) or vector of parsing_stat elements
    committed Jun 23, 2012
  7. unit tests: more coverage

    committed Jun 23, 2012
  8. fix: use Converter for derived rules

    If rule is a rule returning other rule with semantic action it
    generates Converter rule to convert result of the 1st rule semantic
    action using semantic action provided to the derived rule
    committed Jun 23, 2012
Commits on Jun 22, 2012
  1. extending uint test coverage

    committed Jun 22, 2012
  2. parse() for parsing vs match() for matching

    On calling some_rule.parse(src) memoization cache is cleared because
    data is ordinary taken from new source. During the parsing .match() is
    used and saved matches are returned if exist. So, user should call
    some_rule.parse(src) for any new source (normal use cases) and can
    call some_rule.match(src) if need to parse the same source as before
    committed Jun 22, 2012
  3. fix: rule generation: return rule copy on adding action to rule

    Rule generator can just return another rule with different action,
    original rule was modified before causing unexpected behaviour. Now
    copy properties are added into rules to use in described cases etc.
    committed Jun 22, 2012
Commits on Jun 21, 2012
  1. helpers to make rules matching any predicate and isinstance checking

    called match(<boolean predicate>) and isa(<class>)
    committed Jun 21, 2012
  2. not-predicate does not consume input

    It was done to correspond to PEG, restoring missing parsing
    capabilities
    committed Jun 21, 2012
  3. rule to consume any character

    generator wrapper - FirstConsumeRule, generator - match_always(),
    shurtcut - anything
    committed Jun 21, 2012
  4. str_from action generator

    frequently used functionality: generates semantic action to convert Nth
    element of the sequence from list to string
    committed Jun 21, 2012
  5. basic unicode support

    committed Jun 21, 2012
  6. fix: InfiniteInput: wrong str() conversion

    Also starting to add unit tests
    committed Jun 21, 2012
Commits on Jun 20, 2012
  1. parser memoization refactoring

    Parser is taken by generator only for the same options, otherwise it
    will be regenerated
    committed Jun 20, 2012