A summary of data about the Ruby ecosystem.

https://github.com/kschiess/parslet

A small PEG based parser library. See the Hacking page in the Wiki as well.
https://github.com/kschiess/parslet

Keywords from Contributors

activerecord activejob mvc rubygem rspec rubocop sidekiq ruby-gem yardoc yard

Last synced: about 3 hours ago
JSON representation

Repository metadata

A small PEG based parser library. See the Hacking page in the Wiki as well.

README

          INTRODUCTION

Parslet makes developing complex parsers easy. It does so by

* providing the best error reporting possible
* not generating reams of code for you to debug

Parslet takes the long way around to make your job easier. It allows for
incremental language construction. Often, you start out small, implementing
the atoms of your language first; _parslet_ takes pride in making this
possible.

Eager to try this out? Please see the associated web site:
https://kschiess.github.io/parslet/

SYNOPSIS

  require 'parslet'
  include Parslet

  # parslet parses strings
  str('foo').
    parse('foo') # => "foo"@0

  # it matches character sets
  match['abc'].parse('a') # => "a"@0
  match['abc'].parse('b') # => "b"@0
  match['abc'].parse('c') # => "c"@0

  # and it annotates its output
  str('foo').as(:important_bit).
    parse('foo') # => {:important_bit=>"foo"@0}

  # you can construct parsers with just a few lines
  quote = str('"')
  simple_string = quote >> (quote.absent? >> any).repeat >> quote

  simple_string.
    parse('"Simple Simple Simple"') # => "\"Simple Simple Simple\""@0

  # or by making a fuss about it 
  class Smalltalk < Parslet::Parser
    root :smalltalk

    rule(:smalltalk) { statements }
    rule(:statements) { 
      # insert smalltalk parser here (outside of the scope of this readme)
    }
  end

  # and then
  Smalltalk.new.parse('smalltalk')

FEATURES

  * Tools for every part of the parser chain
  * Transformers generate Abstract Syntax Trees
  * Accelerators transform parsers, making them quite a bit faster
  * Pluggable error reporters
  * Graphviz export for your parser
  * Rspec testing support rig
  * Simply Ruby, composable and hackable

COMPATIBILITY

This library is intended to work with Ruby variants >= 1.9. I've tested it on 
MRI 1.9, rbx-head, jruby. Please report as a bug if you encounter issues.

STATUS 

Production worthy.

(c) 2010-today Kaspar Schiess

        

Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 1 day ago

Total Commits: 761
Total Committers: 41
Avg Commits per committer: 18.561
Development Distribution Score (DDS): 0.143

Commits in past year: 0
Committers in past year: 0
Avg Commits per committer in past year: 0.0
Development Distribution Score (DDS) in past year: 0.0

Name Email Commits
Kaspar Schiess k****s@a****i 652
Florian Hanke f****e@g****m 17
Kaspar Schiess k****r@p****m 12
Kaspar Schiess k****s@t****h 9
Kaspar Schiess k****r@a****i 7
Chris Wendt c****t@g****m 6
Josep M. Bach j****h@g****m 5
Rory O’Kane r****y@r****m 4
Thomas Ingram c****e@r****m 4
Raphael Simon r****l@r****m 3
Kevin Olbrich k****h@m****m 3
Mark Delk j****l@g****m 3
Postmodern p****3@g****m 3
meh m****h@p****g 3
Torsten Ruger t****n@v****i 2
Adam Prescott a****m@a****m 2
Max Jacobson m****x@h****t 2
0x01f7 s****7@g****m 1
Andrew Hartford a****d@d****m 1
Jordan Ryan Reuter j****r@s****m 1
wusuopu a****n@l****n 1
takahashim m****i@r****g 1
sandstrom m****b@a****e 1
aoitaku a****u@g****m 1
Zach Moazeni z****i@g****m 1
Tadashi Saito t****r@g****m 1
Sebastian Skałacki s****e@g****m 1
Roger Braun r****r@r****t 1
Nikita Shilnikov ns@l****u 1
Matt Larraz m****z 1
and 11 more...

Committer domains:


Issue and Pull Request metadata

Last synced: 13 days ago

Total issues: 61
Total pull requests: 53
Average time to close issues: 6 months
Average time to close pull requests: 6 months
Total issue authors: 52
Total pull request authors: 36
Average comments per issue: 2.67
Average comments per pull request: 2.15
Merged pull request: 23
Bot issues: 0
Bot pull requests: 2

Past year issues: 3
Past year pull requests: 7
Past year average time to close issues: N/A
Past year average time to close pull requests: 1 minute
Past year issue authors: 3
Past year pull request authors: 2
Past year average comments per issue: 0.0
Past year average comments per pull request: 0.71
Past year merged pull request: 0
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/kschiess/parslet

Top Issue Authors

  • ravinggenius (4)
  • olbrich (3)
  • kernow (2)
  • postmodern (2)
  • dorianmariefr (2)
  • igravious (2)
  • hagabaka (1)
  • bastelfreak (1)
  • dmolesUC (1)
  • xavriley (1)
  • takashiyamazaki (1)
  • niuage (1)
  • nak1114 (1)
  • HoneyryderChuck (1)
  • pinkynrg (1)

Top Pull Request Authors

  • ronaldtse (5)
  • chrismwendt (3)
  • taichi-ishitani (3)
  • maxjacobson (3)
  • olbrich (2)
  • ravinggenius (2)
  • sheldon-b (2)
  • dependabot[bot] (2)
  • johnnaegle (2)
  • mlarraz (2)
  • alex-sc (2)
  • andrewpkent (1)
  • tallakt (1)
  • look (1)
  • rathrio (1)

Top Issue Labels

  • discussion (13)
  • feature requests (7)
  • delayed (2)
  • supportrequestsshouldnotbeissues (2)
  • howto (2)
  • worksasdesigned (2)

Top Pull Request Labels

  • discussion (2)
  • delayed (2)
  • dependencies (2)
  • ready_for_merge (1)
  • no tests (1)
  • feature requests (1)

Package metadata

gem.coop: parslet

Parser construction library with great error reporting in Ruby.

  • Homepage: http://kschiess.github.io/parslet
  • Documentation: http://www.rubydoc.info/gems/parslet/
  • Licenses: MIT
  • Latest release: 2.0.0 (published almost 6 years ago)
  • Last Synced: 2025-12-22T13:30:19.371Z (2 days ago)
  • Versions: 22
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 75,226,398 Total
  • Docker Downloads: 487,790,949
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 0.127%
    • Downloads: 0.38%
  • Maintainers (1)
rubygems.org: parslet

Parser construction library with great error reporting in Ruby.

  • Homepage: http://kschiess.github.io/parslet
  • Documentation: http://www.rubydoc.info/gems/parslet/
  • Licenses: MIT
  • Latest release: 2.0.0 (published almost 6 years ago)
  • Last Synced: 2025-12-22T07:48:12.032Z (2 days ago)
  • Versions: 22
  • Dependent Packages: 232
  • Dependent Repositories: 24,108
  • Downloads: 75,221,272 Total
  • Docker Downloads: 487,790,949
  • Rankings:
    • Dependent packages count: 0.171%
    • Dependent repos count: 0.229%
    • Docker downloads count: 0.253%
    • Downloads: 0.403%
    • Average: 0.973%
    • Stargazers count: 2.076%
    • Forks count: 2.708%
  • Maintainers (1)
gem.coop: ghazel-parslet

Parser construction library with great error reporting in Ruby.

  • Homepage: http://kschiess.github.com/parslet
  • Documentation: http://www.rubydoc.info/gems/ghazel-parslet/
  • Licenses: mit
  • Latest release: 1.4.0.2 (published over 13 years ago)
  • Last Synced: 2025-12-22T13:30:19.532Z (2 days ago)
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 8,316 Total
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 22.558%
    • Downloads: 67.675%
  • Maintainers (1)
rubygems.org: ghazel-parslet

Parser construction library with great error reporting in Ruby.

  • Homepage: http://kschiess.github.com/parslet
  • Documentation: http://www.rubydoc.info/gems/ghazel-parslet/
  • Licenses: mit
  • Latest release: 1.4.0.2 (published over 13 years ago)
  • Last Synced: 2025-12-22T13:30:19.528Z (2 days ago)
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 8,316 Total
  • Rankings:
    • Stargazers count: 1.893%
    • Forks count: 2.441%
    • Dependent packages count: 15.706%
    • Average: 23.972%
    • Dependent repos count: 46.782%
    • Downloads: 53.039%
  • Maintainers (1)

Dependencies

website/Gemfile rubygems
  • RedCloth >= 0
  • case >= 0
  • cod >= 0
  • middleman >= 0
  • parslet >= 0
  • rb-fsevent >= 0
  • rspec >= 0
  • slim >= 0
  • text-highlight >= 0
website/Gemfile.lock rubygems
  • RedCloth 4.3.2
  • activesupport 5.0.7.2
  • addressable 2.7.0
  • backports 3.16.0
  • case 0.5.2.1
  • cod 0.6.0
  • coffee-script 2.4.1
  • coffee-script-source 1.12.2
  • concurrent-ruby 1.1.6
  • contracts 0.13.0
  • diff-lcs 1.3
  • dotenv 2.7.5
  • erubis 2.7.0
  • execjs 2.7.0
  • fast_blank 1.0.0
  • fastimage 2.1.7
  • ffi 1.12.2
  • haml 5.1.2
  • hamster 3.0.0
  • hashie 3.6.0
  • i18n 0.9.5
  • kramdown 1.17.0
  • listen 3.0.8
  • memoist 0.16.2
  • middleman 4.3.5
  • middleman-cli 4.3.5
  • middleman-core 4.3.5
  • minitest 5.14.0
  • padrino-helpers 0.13.3.4
  • padrino-support 0.13.3.4
  • parallel 1.19.1
  • parslet 1.8.2
  • public_suffix 4.0.3
  • rack 2.2.2
  • rb-fsevent 0.10.3
  • rb-inotify 0.10.1
  • rspec 3.9.0
  • rspec-core 3.9.1
  • rspec-expectations 3.9.0
  • rspec-mocks 3.9.1
  • rspec-support 3.9.2
  • sassc 2.2.1
  • servolux 0.13.0
  • slim 4.0.1
  • temple 0.8.2
  • text-highlight 1.0.2
  • thor 1.0.1
  • thread_safe 0.3.6
  • tilt 2.0.10
  • tzinfo 1.2.6
  • uglifier 3.2.0
.github/workflows/CI.yml actions
  • actions/checkout v2 composite
  • ruby/setup-ruby v1 composite
Gemfile rubygems
parslet.gemspec rubygems

Score: 31.306674211135746