{"id":15532098,"url":"https://github.com/dexhunter/lexing-rs","last_synced_at":"2026-05-13T02:34:14.307Z","repository":{"id":80231366,"uuid":"154102894","full_name":"dexhunter/lexing-rs","owner":"dexhunter","description":"A lexer in rust, which handles doublequoted string.","archived":false,"fork":false,"pushed_at":"2018-10-22T07:26:55.000Z","size":581,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-02T17:29:10.990Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dexhunter.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE-OF-CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-10-22T07:28:10.000Z","updated_at":"2018-10-29T08:50:01.000Z","dependencies_parsed_at":"2023-07-04T10:31:50.257Z","dependency_job_id":null,"html_url":"https://github.com/dexhunter/lexing-rs","commit_stats":{"total_commits":15,"total_committers":1,"mean_commits":15.0,"dds":0.0,"last_synced_commit":"eb846fd08c8863082805b24bbd25fde0ae259bd7"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dexhunter/lexing-rs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dexhunter%2Flexing-rs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dexhunter%2Flexing-rs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dexhunter%2Flexing-rs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dexhunter%2Flexing-rs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dexhunter","download_url":"https://codeload.github.com/dexhunter/lexing-rs/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dexhunter%2Flexing-rs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32965424,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-12T23:30:32.555Z","status":"online","status_checked_at":"2026-05-13T02:00:07.132Z","response_time":115,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2024-10-02T11:29:06.345Z","updated_at":"2026-05-13T02:34:14.289Z","avatar_url":"https://github.com/dexhunter.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Lexing\n\n[![Build Status](https://travis-ci.org/parsing-tech/lexing-rs.svg?branch=master)](https://travis-ci.org/parsing-tech/lexing-rs)\n\n## Welcome\n\nA lexer in rust, which handles doublequoted string.\n\n- zero copy\n- no DSL, just rust code\n  - for lexer is much more simple than parser\n- to serve as the fontend of parsing-tech\n\n## Example\n\n### abc\n\n``` rust\nuse lexing::{\n    CharTable, Token, Span, LexError,\n};\n\nfn main () -\u003e Result\u003c(), LexError\u003e {\n    let char_table = CharTable::new ()\n        .quotation_mark ('\"')\n        .space ('\\n') .space ('\\t') .space (' ')\n        .char (';');\n    let input = r#\"a \"b\" c;\"#;\n    let token_vec = char_table.lex (input)?;\n    println! (\"- token_vec = {:#?}\", token_vec);\n    Ok (())\n}\n```\n\noutput :\n\n``` rust\n- token_vec = [\n    Word {\n        span: Span {\n            lo: 0,\n            hi: 1\n        },\n        word: \"a\"\n    },\n    Quotation {\n        span: Span {\n            lo: 2,\n            hi: 5\n        },\n        quotation_mark: '\\\"',\n        string: \"b\"\n    },\n    Word {\n        span: Span {\n            lo: 6,\n            hi: 7\n        },\n        word: \"c\"\n    },\n    Char {\n        span: Span {\n            lo: 7,\n            hi: 8\n        },\n        ch: ';'\n    }\n]\n```\n\n## Docs\n\n- [API docs](https://parsing-tech.github.io/lexing-rs/api/lexing)\n\n## Contributing\n\nWe use Collective Code Construction Contract -- a.k.a. C4, as our collaboration protocol.\n\n- [The C4 RFC](https://rfc.zeromq.org/spec:42/C4)\n- [Our Style Guide](STYLE-GUIDE.md)\n\nTo highlight some features of C4 :\n\n```\n- Everyone, without distinction or discrimination,\n  SHALL have an equal right to become a Contributor under the terms of this contract.\n\n- Change on the project SHALL be governed by the pattern of\n  accurately identifying problems\n  and applying minimal, accurate solutions to these problems.\n```\n\n## CODE OF CONDUCT\n\n[Contributor Covenant Code of Conduct](CODE-OF-CONDUCT.md)\n\n## LICENSE\n\n[GPLv3](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdexhunter%2Flexing-rs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdexhunter%2Flexing-rs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdexhunter%2Flexing-rs/lists"}