Git Product home page Git Product logo

gparsec's Introduction

GParsec

A parser combinator library for Gleam that supports all targets.

GParsec's API does heavily rely on pipelines, thus you can create powerful parsers by simply chaining multiple parsers together.

Changelog

Take a look at the changelog to get an overview of each release and its changes.

Contribution Guidelines

More information can be found here.

License

GParsec is licensed under the MIT license.

gparsec's People

Contributors

patrik-kuehl avatar

Watchers

 avatar

gparsec's Issues

[Feature]: Implement many parser function

Proposal

The many function will take another parser as a callback and apply it zero to n times. The many function can never fail since it simply returns the previous parser in case the first parser invocation doesn't succeed.

[Feature]: Implement one_of parser function

Proposal

The one_of function takes a list of parsers and tries each of them once in order, returning the result of the first one that succeeds. In case no parser succeeds, an error is returned.

[Feature]: Implement repeat parser function

Proposal

The repeat parser function works almost the same as the many parser function. The difference is that many directly works with the value of the parser while repeat expects the prior parser to hold a list as a value and then uses a parser that prepends a value of the type parameter the list expects per iteration.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.