summaryrefslogtreecommitdiff
path: root/1Tdata/xbase/xbase64-4.1.4/src/core/xbuda.cpp
blob: 5db7aec92da0a90b39591e48e9a6986dedd2cb07 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
/*  xbuda.cpp

XBase64 Software Library

Copyright (c) 1997,2003,2014,2022,2023 Gary A Kunkel

The xb64 software library is covered under the terms of the GPL Version 3, 2007 license.

Email Contact:

    XDB-devel@lists.sourceforge.net
    XDB-users@lists.sourceforge.net

This module handles uda (user data area) methods 

*/

#include "xbase.h"


// might need to change thisto XB_EXPRESSION_SUPPORT
#ifdef XB_EXPRESSION_SUPPORT


namespace xb{

/************************************************************************/
xbUda::xbUda() {
  llOrd. SetDupKeys( xbFalse );
}
/************************************************************************/
xbUda::~xbUda() {}
/************************************************************************/
void xbUda::Clear() {
  llOrd.Clear();
}
/************************************************************************/
xbInt16 xbUda::GetTokenCnt() const {
  return llOrd.GetNodeCnt();
}
/************************************************************************/

xbInt16 xbUda::GetTokenForKey( const xbString &sKey, xbString &sToken ) {
  return llOrd.GetDataForKey( sKey, sToken );
}

/************************************************************************/
xbInt16 xbUda::AddTokenForKey( const xbString &sKey, const xbString &sToken ) {
  return llOrd.InsertKey( sKey, sToken );
}
/************************************************************************/

xbInt16 xbUda::UpdTokenForKey( const xbString &sKey, const xbString &sData ) {
  return llOrd.UpdateForKey( sKey, sData );
}

/************************************************************************/
xbInt16 xbUda::DelTokenForKey( const xbString &sKey ) {
  return llOrd.RemoveKey( sKey );  //, sToken );
}


/************************************************************************/

void xbUda::DumpUda() const{

  xbLinkListNode<xbString> *lln = llOrd.GetHeadNode();

  xbInt32 l = 0;
  while( lln ){
    std::cout << ++l << " Key=[" << lln->GetKey() << "] Data=[" << lln->GetData() << "]" << std::endl;
    lln = lln->GetNextNode();
  }
}

/************************************************************************/
}   /* namespace */ 
#endif         /*  XB_EXPRESSION_SUPPORT */