Files
C-Macro-Collections/documentation/cmc/deque.h/functions.md
T
2020-04-30 23:39:09 -03:00

2.8 KiB

Index

Deque

  • _new()
  • _new_custom()
  • _clear()
  • _free()
  • _customize()
  • _push_front()
  • _push_back()
  • _pop_front()
  • _front()
  • _back()
  • _contains()
  • _empty()
  • _full()
  • _count()
  • _capacity()
  • _flag()
  • _resize()
  • _copy_of()
  • _equals()
  • _to_string()
  • _print()

Deque Iterator

WIP.

_new()

Allocates on the heap and returns a new Deque with an internal capacity of the specified value. The Deque will be empty, using the default allocator cmc_alloc_node_default and no callbacks will be set, that is, callbacks will be set to NULL. Its flag will be initially cmc_flags.OK.

Declaration

struct SNAME *PFX##_new(size_t capacity, struct SNAME##_fval *f_val);

Parameters

Parameter Required Description
size_t capacity Yes The initial Deque capacity
struct SNAME##_fval *f_val Yes A Functions Table for V

Returns

Returns When
struct SNAME * If operation was successful
NULL If allocation failed, if capacity is 0 or if f_val is NULL

_new_custom()

Like _new() but allows for custom allocation node and callbacks. The allocation node is optional. If present, the function will immediately use it to allocate the new Deque. If NULL, cmc_alloc_node_default will instead be used.

Declaration

struct SNAME *PFX##_new_custom(size_t capacity, struct SNAME##_fval *f_val, struct cmc_alloc_node *alloc, struct cmc_callbacks *callbacks);

Parameters

Parameter Required Description
size_t capacity Yes The initial Deque capacity
struct SNAME##_fval *f_val Yes A Functions Table for V
struct cmc_alloc_node *alloc No A custom allocation node
struct cmc_callbacks *callbacks No A custom callbacks struct

Returns

Returns When
struct SNAME * If operation was successful
NULL If allocation failed, if capacity is 0 or if f_val is NULL