librnr  1.14.5
RoadNarrows Robotics Common Library 1
dliststr.h File Reference

Doubly linked list of character strings "inherited" from dlistvoid. More...

#include <stdio.h>
#include <string.h>
#include "rnr/new.h"
#include "rnr/dlistvoid.h"

Go to the source code of this file.

Macros

#define DLIST_DNAME   Str
 dlist namespace name
 
#define DLIST_DTYPE   char
 dlist data type
 

Functions

static int DListStrDataCmp (const char *sData1, const char *sData2)
 Node data comparator callback. More...
 
static void DListStrDataDelete (char *sData)
 Node data delete callback. More...
 
static void DListStrDataPrint (FILE *fp, char *sData)
 Print node data callback. More...
 
static DListStr_T * DListStrNewDft ()
 Allocator and initializer new empty string dlist with default callbacks. More...
 

Detailed Description

Doubly linked list of character strings "inherited" from dlistvoid.

Package
RoadNarrows Robotics Common Library 1
Library
librnr
File
rnr/dliststr.h
Author
Robin Knight (robin.nosp@m..kni.nosp@m.ght@r.nosp@m.oadn.nosp@m.arrow.nosp@m.s.co.nosp@m.m)
License
MIT
EULA
See the README and EULA files for any copyright and licensing information.

Definition in file dliststr.h.

Function Documentation

static int DListStrDataCmp ( const char *  sData1,
const char *  sData2 
)
inlinestatic

Node data comparator callback.

Parameters
sData1Node 1 string data.
sData2Node 2 string data.
Returns
Returns <0, 0, or >0 if pData1 is less than, equal, or greater than pData2, respectively.

Definition at line 51 of file dliststr.h.

Referenced by DListStrNewDft().

52 {
53  return strcmp(sData1, sData2);
54 }
static void DListStrDataDelete ( char *  sData)
inlinestatic

Node data delete callback.

Parameters
sDataNode string data.

Definition at line 61 of file dliststr.h.

Referenced by DListStrNewDft().

62 {
63  delete(sData);
64 }
static void DListStrDataPrint ( FILE *  fp,
char *  sData 
)
inlinestatic

Print node data callback.

Parameters
fpFile stream pointer.
sDataNode string data.
See also
DListVoidPrint()

Definition at line 74 of file dliststr.h.

References NULL.

Referenced by NewSearchPathDList().

75 {
76  if( sData != NULL )
77  {
78  fprintf(fp, "%s", sData);
79  }
80 }
#define NULL
null pointer
Definition: rnrconfig.h:199
static DListStr_T* DListStrNewDft ( )
inlinestatic

Allocator and initializer new empty string dlist with default callbacks.

Default user string comparator function is strcmp(). Default string data deallocator function is delete().

Returns
Returns pointer to new dlist (head) on success.

Definition at line 91 of file dliststr.h.

References C_DECLS_END, DListStrDataCmp(), and DListStrDataDelete().

Referenced by NewSearchPathDList(), and test_dlist().

92 {
93  return DListStrNew(DListStrDataCmp, DListStrDataDelete);
94 }
static void DListStrDataDelete(char *sData)
Node data delete callback.
Definition: dliststr.h:61
static int DListStrDataCmp(const char *sData1, const char *sData2)
Node data comparator callback.
Definition: dliststr.h:51