{"id":22427937,"url":"https://github.com/grindelfp/grindelf-queue","last_synced_at":"2025-03-27T06:42:53.313Z","repository":{"id":198537619,"uuid":"701005603","full_name":"GrindelfP/grindelf-queue","owner":"GrindelfP","description":"This is an implementation of a Queue data structure in C programming language.","archived":false,"fork":false,"pushed_at":"2023-10-27T09:04:40.000Z","size":37,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-01T11:42:46.072Z","etag":null,"topics":["c","library","queue"],"latest_commit_sha":null,"homepage":"https://grindelfp.github.io/grindelf-queue-docs.github.io/","language":"C","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/GrindelfP.png","metadata":{"files":{"readme":"README.adoc","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}},"created_at":"2023-10-05T18:05:04.000Z","updated_at":"2023-10-27T08:21:46.000Z","dependencies_parsed_at":null,"dependency_job_id":"80808613-4d23-48bc-9799-72e33d895e15","html_url":"https://github.com/GrindelfP/grindelf-queue","commit_stats":null,"previous_names":["grindelfp/grindelf-queue"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GrindelfP%2Fgrindelf-queue","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GrindelfP%2Fgrindelf-queue/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GrindelfP%2Fgrindelf-queue/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GrindelfP%2Fgrindelf-queue/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GrindelfP","download_url":"https://codeload.github.com/GrindelfP/grindelf-queue/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245798530,"owners_count":20673901,"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":["c","library","queue"],"created_at":"2024-12-05T20:13:15.888Z","updated_at":"2025-03-27T06:42:53.297Z","avatar_url":"https://github.com/GrindelfP.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"= Grindelf Queue =\n\n== Description ==\n\nThis is an implementation of a Queue data structure in C programming language. The purpose of this project is purely educational which both let its creator study pointers and dynamical memory allocation in C programming language and Queue data structure.\n\n== Documentation ==\n\nYou can access documentation of this library https://grindelfp.github.io/grindelf-queue-docs.github.io/[here].\n\n== Installation ==\n\nTo use this library in your project you should follow these steps:\n\n1) Place the file libgrindelf_queue.a in your project build directory (for a CMake project by default it is cmake-build-debug directory).\n2) In your code add an include statement as follows:\n[source, c]\n----\n#include \"queue.h\"\n----\n3.1) If you are using CMake, add the following lines to your CMakeLists.txt file:\n[souce, CMake]\n----\nadd_library(grindelf_queue STATIC IMPORTED)\n\nset_target_properties(grindelf_queue PROPERTIES IMPORTED_LOCATION /path/to/library_directory/libgrindelf_queue.a)\n\ntarget_link_libraries(your_target_name grindelf_queue)\n----\nMake sure you replace /path/to/library_directory/libgrindelf_queue.a with path to where you've placed your library .a file.\n3.2) If you are not using CMake, add the following line to your compiler command (example given with gcc):\n[source, bash]\n----\ngcc -o output_file source_file.c -L/path/to/library_directory -lgrindelf_queue\n----\nMake sure you replace /path/to/library_directory with path to where you've placed your library .a file (without filename in the path).\n\n== Usage ==\nTo use this Queue data structure, you need to include the header file \"queue.h\" in your C program. Then, you need to initialize a Queue variable by calling the function \"init()\". This function will return a pointer to the new Queue variable.\n\n*Important:* Make sure that you clear used by your Queue variable memory by calling the function \"destroy()\" before exiting your program *:tnatropmI*\n\nTo include an element into your Queue use the function \"enqueue()\".\n\nTo remove an element from your Queue use the function \"dequeue(your Queue address)\".\n\nTo get the first element of your Queue use the function \"peek(your Queue address)\".\n\nTo destroy your Queue use the function \"destroy(your Queue address)\".\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgrindelfp%2Fgrindelf-queue","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgrindelfp%2Fgrindelf-queue","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgrindelfp%2Fgrindelf-queue/lists"}