{"id":15038666,"url":"https://github.com/tigerpixel/parsercombinator","last_synced_at":"2025-10-11T20:43:44.991Z","repository":{"id":56921370,"uuid":"85300070","full_name":"tigerpixel/ParserCombinator","owner":"tigerpixel","description":"A simple Parser Combinator written in Swift","archived":false,"fork":false,"pushed_at":"2019-10-01T19:33:54.000Z","size":114,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-21T13:19:01.420Z","etag":null,"topics":["apple","fp","functional-programming","ios","macos","parser","parser-combinators","parsercombinator","swift","swift-3","swift-framework","swift-library","swift3","tvos","watchos"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tigerpixel.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-03-17T10:33:29.000Z","updated_at":"2019-09-30T20:58:25.000Z","dependencies_parsed_at":"2022-08-21T04:50:42.370Z","dependency_job_id":null,"html_url":"https://github.com/tigerpixel/ParserCombinator","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tigerpixel%2FParserCombinator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tigerpixel%2FParserCombinator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tigerpixel%2FParserCombinator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tigerpixel%2FParserCombinator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tigerpixel","download_url":"https://codeload.github.com/tigerpixel/ParserCombinator/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254256655,"owners_count":22040327,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apple","fp","functional-programming","ios","macos","parser","parser-combinators","parsercombinator","swift","swift-3","swift-framework","swift-library","swift3","tvos","watchos"],"created_at":"2024-09-24T20:39:35.351Z","updated_at":"2025-10-11T20:43:39.948Z","avatar_url":"https://github.com/tigerpixel.png","language":"Swift","readme":"# ParserCombinator\n\n[![Build Status](https://travis-ci.org/tigerpixel/ParserCombinator.svg?branch=master)](https://travis-ci.org/tigerpixel/ParserCombinator)\n[![Version](https://img.shields.io/cocoapods/v/ParserCombinator.svg?style=flat)](http://cocoapods.org/pods/ParserCombinator)\n[![Platform](https://img.shields.io/cocoapods/p/ParserCombinator.svg?style=flat)](http://cocoapods.org/pods/ParserCombinator)\n[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)\n[![License](https://img.shields.io/cocoapods/l/ParserCombinator.svg?style=flat)](http://cocoapods.org/pods/ParserCombinator)\n\nA simple parser combinator, created in Swift.\n\nParserCombinator attempts to create a simple and user-friendly way to parse strings into objects and structures. Technical terms are largely avoided and convenience parsers are provided.\n\nThe parser can be enacted by calling the 'run' function:\n\n```swift\nmyParser.run(on: \"String to parse\")\n```\n\nThe unit tests provide examples of using the parser and creating your own parsing rules.\n\nPull requests for improvements are welcome.\n\n## Requirements\n\nThere are no external requirements for this project, just Swift.\n\n- iOS 8.0+ / macOS 10.9+ / tvOS 9.0+ / watchOS 2.0+\n- Xcode 11+\n- Swift 5.1+\n\nFor previous versions of Xcode and Swift please see prior releases.\n\n## Installation\n\n### Swift Package Manager\n\nThe [Swift Package Manager](https://swift.org/package-manager) is the official tool for managing the distribution of Swift code. It is currently available for all Apple platforms. It can also be used with Linux but this project does not fully support Linux at this point in time.\n\nIf you use it to manage your dependencies, simply add ParserCombinator to the dependencies value of your Package.swift file.\n\n```swift\ndependencies: [\n    .package(url: \"https://github.com/Tigerpixel/ParserCombinator.git\", from: \"2.1.0\")\n]\n```\n\n### Cocoapods\n\nParserCombinator is available through [CocoaPods](https://cocoapods.org/pods/ParserCombinator). To install it, simply add the following line to your Podfile:\n\n```ruby\npod \"ParserCombinator\"\n```\n\n### Carthage\n\nIf you use [Carthage](https://github.com/Carthage/Carthage) to manage your dependencies, simply add the following line to your Cartfile:\n\n```ogdl\ngithub \"tigerpixel/ParserCombinator\"\n```\n\nIf you use Carthage to build your dependencies, make sure you have added `ParserCombinator.framework` to the \"_Linked Frameworks and Libraries_\" section of your target, and have included them in your Carthage framework copying build phase.\n\n### Git Submodule\n\n1. Add the ParserCombinator repository as a [submodule](https://git-scm.com/book/en/v2/Git-Tools-Submodules) of your application’s repository.\n1. Run `git submodule update --init --recursive` from within the ParserCombinator folder.\n1. Drag and drop `ParserCombinator.xcodeproj` into your application’s Xcode project or workspace.\n1. On the “General” tab of your application target’s settings, add `ParserCombinator.framework`. to the “Embedded Binaries” section.\n1. If your application target does not contain Swift code at all, you should also set the `EMBEDDED_CONTENT_CONTAINS_SWIFT` build setting to “Yes”.\n\n## MIT License\n\nParserCombinator is available under the MIT license. Details can be found within the LICENSE file.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftigerpixel%2Fparsercombinator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftigerpixel%2Fparsercombinator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftigerpixel%2Fparsercombinator/lists"}