{"id":24023768,"url":"https://github.com/theo-mestre/parser","last_synced_at":"2025-08-29T13:36:25.134Z","repository":{"id":239355637,"uuid":"799307285","full_name":"Theo-Mestre/Parser","owner":"Theo-Mestre","description":"a C++ parser for custom flat file.","archived":false,"fork":false,"pushed_at":"2024-05-11T18:32:04.000Z","size":10,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-08T14:44:17.444Z","etag":null,"topics":["cpp","tools"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Theo-Mestre.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-11T18:29:00.000Z","updated_at":"2024-12-10T15:50:25.000Z","dependencies_parsed_at":null,"dependency_job_id":"ce650ec2-cd88-424e-a5da-c29afef5602b","html_url":"https://github.com/Theo-Mestre/Parser","commit_stats":null,"previous_names":["theo-gamedev/parser","theo-mestre/parser"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Theo-Mestre%2FParser","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Theo-Mestre%2FParser/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Theo-Mestre%2FParser/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Theo-Mestre%2FParser/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Theo-Mestre","download_url":"https://codeload.github.com/Theo-Mestre/Parser/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240771900,"owners_count":19854982,"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":["cpp","tools"],"created_at":"2025-01-08T14:44:13.348Z","updated_at":"2025-02-26T00:49:17.312Z","avatar_url":"https://github.com/Theo-Mestre.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# File parser\n\nThis repository contains a simple parser that I made during my first year of programming studies.\n\n## Features\n\nThis parser read a text file and store the chosen part of its content in a map.\nThe key is the name of the property given in the file.\n\nOne file can contain multiple part. There are defined by their name between square brackets.\n\nThe file must be formatted like this:\n```\n[part1]\n{\n\tproperty1 = value1\n\tproperty2 = value2\n\tproperty3 = value3\n}\n[part2]\n{\n\tproperty1 = value1\n\tproperty2 = value2\n\tproperty3 = value3\n}\n```\n\n## Installation\n\nTo use this project, follow these steps:\n\n1. Clone the repository: `git clone https://github.com/your-username/your-repo.git`\n2. Run the project: `Parsing`\n\n## Usage\n\nTo use this project, add the Parser.h and Parser.cpp files to your project and include the Parser.h file in your source code.\n\n```cpp\n#include \"Parser.h\"\n\nint main()\n{\n\tValues data(\"FileName.txt\", \"ObjectName\");\n\t\n\t// print the content of the map\n\tfor (auto [_key, _value] : data.GetMap())\n\t{\n\t\tstd::cout \u003c\u003c _key \u003c\u003c \" \" \u003c\u003c _value \u003c\u003c \"\\n\";\n\t}\n\n\n\treturn 0;\n}\n```\nin this example, the file FileName.txt contains the following content:\n```\n[ObjectName]\n{\n\tproperty1 = value1\n\tproperty2 = value2\n\tproperty3 = value3\n}\n```\n\nFor more information, see the project example where I use this parser to read a sprite configuration file.\nI show how to use the parser to read the file and how to use the data to initialize an object.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftheo-mestre%2Fparser","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftheo-mestre%2Fparser","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftheo-mestre%2Fparser/lists"}