{"id":20816710,"url":"https://github.com/moritzrinow/cstream","last_synced_at":"2025-08-11T00:08:57.813Z","repository":{"id":144546644,"uuid":"148619803","full_name":"moritzrinow/cStream","owner":"moritzrinow","description":"C byte-stream and serialization utils","archived":false,"fork":false,"pushed_at":"2018-10-22T20:45:08.000Z","size":51,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-05-07T13:34:58.494Z","etag":null,"topics":["byte-array","bytes","c","cpp","memory","serializable-objects","serialization","serialize","stream"],"latest_commit_sha":null,"homepage":null,"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/moritzrinow.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":"2018-09-13T10:08:15.000Z","updated_at":"2022-09-03T21:39:51.000Z","dependencies_parsed_at":null,"dependency_job_id":"1104aea7-0741-4345-8cc8-cab34193eff6","html_url":"https://github.com/moritzrinow/cStream","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/moritzrinow/cStream","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moritzrinow%2FcStream","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moritzrinow%2FcStream/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moritzrinow%2FcStream/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moritzrinow%2FcStream/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/moritzrinow","download_url":"https://codeload.github.com/moritzrinow/cStream/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moritzrinow%2FcStream/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269809476,"owners_count":24478545,"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","status":"online","status_checked_at":"2025-08-10T02:00:08.965Z","response_time":71,"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":["byte-array","bytes","c","cpp","memory","serializable-objects","serialization","serialize","stream"],"created_at":"2024-11-17T21:36:24.688Z","updated_at":"2025-08-11T00:08:57.805Z","avatar_url":"https://github.com/moritzrinow.png","language":"C","readme":"# cStream\n\nC byte-stream and serialization utils\n\n## Content\n\n* Build\n* Usage\n\n## Build\n\nClone the repository with git...\n\n### Linux\nOpen the terminal in the repo directory and type:\n\n\"make\" to install cStream\n\n\"make clean\" to uninstall cStream\n\n### Windows\nI have not added a way to build binaries for Windows yet...\nJust add the source files to your VS Solution/Project.\n\n\n## Using streams\n\n#### The structure\nSTREAM stream;\n\n#### Initialize\nstream_init(\u0026stream , 0)                            // (stream, capacity)\n\n_init(\u0026stream, 0)                                   // Macro\n\n#### Reserve memory\nstream_reserve(\u0026stream, 1024)                       // (stream, size)\n\n_reserve(\u0026stream, 1024)                             // Macro\n\n#### Write (overwrite)\nstream_write(\u0026stream, some_byte_buffer, length, 0)  // (stream, buffer, length, offset)\n\n_write(\u0026stream, some_byte_buffer, length, 0)        // Macro\n\n#### Write (insert)\nstream_insert(\u0026stream, some_byte_buffer, length, 0) // (stream, buffer, length, offset)\n\n_insert(\u0026stream, some_byte_buffer, length, 0)       // Macro\n\n#### Read\nstream_read(\u0026stream, some_byte_buffer, length, 0)   // (stream, buffer, length, offset)\n\n_read(\u0026stream, some_byte_buffer, length, 0)         // Macro\n\n#### Seek (change position)\nstream_seek(\u0026stream, 0)                             // (stream, position)\n\n_seek(\u0026stream, 0)                                   // Macro\n\n#### Clear (reset)\nstream_clear(\u0026stream)                               // (stream)\n\n_clear(\u0026stream)                                     // Macro\n\n#### Copy\nstream_copy(\u0026stream, \u0026some_other_stream)            // (source_stream, dest_stream)\n\n_copy(\u0026stream, \u0026some_other_stream)                  // Macro\n\n#### Close (cleanup resources)\nstream_close(\u0026stream)                               // (stream)\n\n_close                                              // Macro\n\n##### The macros are available if you define _STREAM_MACROS before including cStream.h\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoritzrinow%2Fcstream","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmoritzrinow%2Fcstream","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoritzrinow%2Fcstream/lists"}