{"id":17036522,"url":"https://github.com/emoon/bgfx-idl","last_synced_at":"2026-04-26T16:31:46.818Z","repository":{"id":139858337,"uuid":"369526832","full_name":"emoon/bgfx-idl","owner":"emoon","description":"Rust parser for bgfx-idl files","archived":false,"fork":false,"pushed_at":"2022-10-07T10:32:32.000Z","size":14,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-22T22:45:11.528Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Rust","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/emoon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2021-05-21T12:22:53.000Z","updated_at":"2022-10-07T10:32:36.000Z","dependencies_parsed_at":null,"dependency_job_id":"c4f0edee-796a-4679-a7b8-10c8bb6f46c6","html_url":"https://github.com/emoon/bgfx-idl","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/emoon/bgfx-idl","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emoon%2Fbgfx-idl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emoon%2Fbgfx-idl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emoon%2Fbgfx-idl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emoon%2Fbgfx-idl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/emoon","download_url":"https://codeload.github.com/emoon/bgfx-idl/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emoon%2Fbgfx-idl/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32305035,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-26T09:34:17.070Z","status":"ssl_error","status_checked_at":"2026-04-26T09:34:00.993Z","response_time":129,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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-14T08:50:48.075Z","updated_at":"2026-04-26T16:31:46.800Z","avatar_url":"https://github.com/emoon.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"bgfx-idl is a Rust parser for bgfx idl files https://github.com/bkaradzic/bgfx/blob/master/scripts/bgfx.idl\n\nThe purpose is to use this data to generate bindings for bgfx, but the format can be used for other projects as well.\n\nThe bgfx idl format is Lua based so this code uses https://github.com/Kampfkarren/full-moon which is a Lua parser written in Rust, but what bgfx-idl offers is a bit easier access to the data instead of navigating the Lua AST tree. It also does some of the calculations requried for flags and such.\n\nSome example of bgfx.idl syntax\n\n```Lua\n--- Depth test state. When `BGFX_STATE_DEPTH_` is not specified depth test will be disabled.\nflag.StateDepthTest { bits = 64, shift = 4, range = 4, base = 1 , desc = \"Depth test state\" }\n\t.Less     --- Enable depth test, less.\n\t.Lequal   --- Enable depth test, less or equal.\n\t.Equal    --- Enable depth test, equal.\n\t.Gequal   --- Enable depth test, greater or equal.\n\t.Greater  --- Enable depth test, greater.\n\t.Notequal --- Enable depth test, not equal.\n\t.Never    --- Enable depth test, never.\n\t.Always   --- Enable depth test, always.\n\t()\n\n--- Init attachment.\nfunc.Attachment.init\n\t\"void\"\n\t.handle \"TextureHandle\" --- Render target texture handle.\n\t.access \"Access::Enum\"  --- Access. See `Access::Enum`.\n\t { default = \"Access::Write\" }\n\t.layer \"uint16_t\"       --- Cubemap side or depth layer/slice to use.\n\t { default = 0 }\n\t.numLayers \"uint16_t\"   --- Number of texture layer/slice(s) in array to use.\n\t { default = 1 }\n\t.mip \"uint16_t\"         --- Mip level.\n\t { default = 0 }\n\t.resolve \"uint8_t\"      --- Resolve flags. See: `BGFX_RESOLVE_*`\n\t { default = \"BGFX_RESOLVE_AUTO_GEN_MIPS\" }\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Femoon%2Fbgfx-idl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Femoon%2Fbgfx-idl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Femoon%2Fbgfx-idl/lists"}