CX Framework
Cross-platform C utility framework
Loading...
Searching...
No Matches
ssdtree.h File Reference

Semi-Structured Data (SSD) tree public API. More...

#include <cx/container/sarray.h>
#include <cx/ssdtree/node/ssdnode.h>
#include <cx/string/strbase.h>

Go to the source code of this file.

Macros

#define ssdCreateHashtable(...)   _ssdCreateRoot(SSD_Create_Hashtable, NULL, opt_flags(__VA_ARGS__))
 
#define ssdCreateArray(...)   _ssdCreateRoot(SSD_Create_Array, NULL, opt_flags(__VA_ARGS__))
 
#define ssdCreateSingle(...)   _ssdCreateRoot(SSD_Create_Single, NULL, opt_flags(__VA_ARGS__))
 
#define ssdCreateCustom(crtype, tree)   _ssdCreateRoot(crtype, tree, 0)
 
#define ssdClone(root, desttree)   _ssdClone(root, desttree, (SSDLockState*)_ssdCurrentLockState)
 
#define ssdSubtree(root, path, create)    _ssdSubtree(root, path, create, (SSDLockState*)_ssdCurrentLockState)
 
#define ssdSubtreeB(root, path)    _ssdSubtreeB(root, path, (SSDLockState*)&_ssdCurrentLockState->_is_SSDLockState)
 
#define ssdGet(root, path, out)   _ssdGet(root, path, out, (SSDLockState*)_ssdCurrentLockState)
 
#define ssdGetD(root, path, out, def)    _ssdGetD(root, path, out, def, (SSDLockState*)_ssdCurrentLockState)
 
#define ssdCopyOut(root, path, vtype, val_copy_out)
 
#define ssdCopyOutD(root, path, vtype, val_copy_out, def)
 
#define ssdVal(type, root, path, def)    _ssdVal_##type(root, path, def, (SSDLockState*)_ssdCurrentLockState)
 
#define ssdStringOut(root, path, out)    _ssdStringOut(root, path, out, (SSDLockState*)_ssdCurrentLockState)
 
#define ssdStringOutD(root, path, out, def)    _ssdStringOutD(root, path, out, def, (SSDLockState*)_ssdCurrentLockState)
 
#define ssdSet(root, path, createpath, val)    _ssdSet(root, path, createpath, val, (SSDLockState*)_ssdCurrentLockState)
 
#define ssdSetC(root, path, createpath, val)    _ssdSetC(root, path, createpath, val, (SSDLockState*)_ssdCurrentLockState)
 
#define ssdRemove(root, path)   _ssdRemove(root, path, (SSDLockState*)_ssdCurrentLockState)
 
#define ssdPtr(root, path)    _ssdPtr(root, path, (SSDLockState*)&_ssdCurrentLockState->_is_SSDLockState)
 
#define ssdStrRef(root, path)    _ssdStrRef(root, path, (SSDLockState*)&_ssdCurrentLockState->_is_SSDLockState)
 
#define ssdObjInstPtr(root, path)    _ssdObjInstPtr(root, path, (SSDLockState*)&_ssdCurrentLockState->_is_SSDLockState)
 
#define ssdObjPtr(root, path, clsname)   objDynCast(clsname, ssdObjInstPtr(root, path))
 
#define ssdExportArray(root, path, out)    _ssdExportArray(root, path, out, (SSDLockState*)_ssdCurrentLockState)
 
#define ssdImportArray(root, path, arr)    _ssdImportArray(root, path, arr, (SSDLockState*)_ssdCurrentLockState)
 
#define ssdExportTypedArray(root, path, type, out, strict)
 
#define ssdImportTypedArray(root, path, type, arr)    _ssdImportTypedArray(root, path, stType(type), SAREF(arr), (SSDLockState*)_ssdCurrentLockState)
 
#define ssdCount(root, path, arrayonly)    _ssdCount(root, path, arrayonly, (SSDLockState*)_ssdCurrentLockState)
 
#define ssdIndex(root, path, idx)    _ssdIndex(root, path, idx, (SSDLockState*)&_ssdCurrentLockState->_is_SSDLockState)
 
#define ssdAppend(root, path, createpath, val)    _ssdAppend(root, path, createpath, val, (SSDLockState*)_ssdCurrentLockState)
 
#define ssdGraft(dest, destpath, src, srcpath)    _ssdGraft(dest, destpath, (SSDLockState*)_ssdCurrentLockState, src, srcpath, NULL)
 

Detailed Description

Semi-Structured Data (SSD) tree public API.

Definition in file ssdtree.h.