package core:container/queue
Index
Types (1)
Constants (1)
Variables (0)
This section is empty.
Types
Constants
DEFAULT_CAPACITY ¶
DEFAULT_CAPACITY :: 16
Variables
This section is empty.
Procedures
back_ptr ¶
back_ptr :: proc "odin" (q: ^$Q/Queue($T)) -> ^$T {…}
consume_back ¶
consume_back :: proc "odin" (q: ^$Q/Queue($T), n: int, loc := #caller_location) {…}
Consume n
elements from the back of the queue
consume_front ¶
consume_front :: proc "odin" (q: ^$Q/Queue($T), n: int, loc := #caller_location) {…}
Consume n
elements from the front of the queue
front_ptr ¶
front_ptr :: proc "odin" (q: ^$Q/Queue($T)) -> ^$T {…}
get ¶
get :: proc "odin" (q: ^$Q/Queue($T), #any_int i: int, loc := #caller_location) -> $T {…}
get_ptr ¶
get_ptr :: proc "odin" (q: ^$Q/Queue($T), #any_int i: int, loc := #caller_location) -> ^$T {…}
init ¶
init :: proc "odin" (q: ^$Q/Queue($T), capacity: int = DEFAULT_CAPACITY, allocator := context.allocator) -> bool {…}
Procedure to initialize a queue
init_from_slice ¶
init_from_slice :: proc "odin" (q: ^$Q/Queue($T), backing: []$T) -> bool {…}
Procedure to initialize a queue from a fixed backing slice
peek_back ¶
peek_back :: proc "odin" (q: ^$Q/Queue($T), loc := #caller_location) -> ^$T {…}
peek_front ¶
peek_front :: proc "odin" (q: ^$Q/Queue($T), loc := #caller_location) -> ^$T {…}
pop_back ¶
pop_back :: proc "odin" (q: ^$Q/Queue($T), loc := #caller_location) -> (elem: $T) {…}
Pop an element from the back of the queue
pop_back_safe ¶
pop_back_safe :: proc "odin" (q: ^$Q/Queue($T)) -> (elem: $T, ok: bool) {…}
Safely pop an element from the back of the queue
pop_front ¶
pop_front :: proc "odin" (q: ^$Q/Queue($T), loc := #caller_location) -> (elem: $T) {…}
Pop an element from the front of the queue
pop_front_safe ¶
pop_front_safe :: proc "odin" (q: ^$Q/Queue($T)) -> (elem: $T, ok: bool) {…}
Safely pop an element from the front of the queue
push_back ¶
push_back :: proc "odin" (q: ^$Q/Queue($T), elem: $T) -> bool {…}
Push an element to the back of the queue
push_back_elems ¶
push_back_elems :: proc "odin" (q: ^$Q/Queue($T), elems: ..$T) -> bool {…}
Push multiple elements to the front of the queue
push_front ¶
push_front :: proc "odin" (q: ^$Q/Queue($T), elem: $T) -> bool {…}
Push an element to the front of the queue
reserve ¶
reserve :: proc "odin" (q: ^$Q/Queue($T), capacity: int) -> bool {…}
Reserve enough space for at least the specified capacity
set ¶
set :: proc "odin" (q: ^$Q/Queue($T), #any_int i: int, val: $T, loc := #caller_location) {…}
Procedure Groups
append ¶
append :: proc{ push_back, push_back_elems, }
push ¶
push :: proc{ push_back, push_back_elems, }
Source Files
Generation Information
Generated with odin version dev-2023-03 (vendor "odin") Windows_amd64 @ 2023-03-29 21:09:05.458772900 +0000 UTC