minishell
vect_dispose.c File Reference
#include "ft_vect.h"
#include "stdlib.h"
Include dependency graph for vect_dispose.c:

Go to the source code of this file.

Functions

void vect_dispose (t_vect *vect)
 
void vect_dispose_each (t_vect *vect, void(*disposer)(void *))
 
static void ptrarr_disposer (void *ptr)
 
void vect_dispose_ptrarr (t_vect *vect)
 

Function Documentation

◆ ptrarr_disposer()

static void ptrarr_disposer ( void *  ptr)
static

Definition at line 36 of file vect_dispose.c.

37 {
38  free(*((void **)ptr));
39 }
Here is the caller graph for this function:

◆ vect_dispose()

void vect_dispose ( t_vect vect)

Definition at line 16 of file vect_dispose.c.

17 {
18  vect->len = 0;
19  vect->cap = 0;
20  vect->elemsize = 0;
21  free(vect->p);
22  vect->p = NULL;
23 }
size_t cap
Definition: ft_vect.h:25
size_t elemsize
Definition: ft_vect.h:27
void * p
Definition: ft_vect.h:28
size_t len
Definition: ft_vect.h:26
Here is the caller graph for this function:

◆ vect_dispose_each()

void vect_dispose_each ( t_vect vect,
void(*)(void *)  disposer 
)

Definition at line 25 of file vect_dispose.c.

26 {
27  size_t pos;
28 
29  pos = 0;
30  if (disposer != NULL)
31  while (pos < vect->len)
32  disposer(vect_at(vect, pos++));
33  vect_dispose(vect);
34 }
void * vect_at(const t_vect *vect, size_t index)
Definition: vect_at.c:15
void vect_dispose(t_vect *vect)
Definition: vect_dispose.c:16
Here is the call graph for this function:
Here is the caller graph for this function:

◆ vect_dispose_ptrarr()

void vect_dispose_ptrarr ( t_vect vect)

Definition at line 41 of file vect_dispose.c.

42 {
44 }
static void ptrarr_disposer(void *ptr)
Definition: vect_dispose.c:36
void vect_dispose_each(t_vect *vect, void(*disposer)(void *))
Definition: vect_dispose.c:25
Here is the call graph for this function: