summaryrefslogtreecommitdiff
path: root/src/include/xbuda.h
blob: e5c0e91be2bee2701ff5fd2c5aaccbc10491da39 (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
/*  xbuda.h

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 class manages the user data area (UDA)

*/


#ifndef __XB_XBUDA_H__
#define __XB_XBUDA_H__

#ifdef  CMAKE_COMPILER_IS_GNUCC
#pragma interface
#endif


#ifdef XB_EXPRESSION_SUPPORT


namespace xb{

class XBDLLEXPORT xbUda {

 public:
  xbUda();
  ~xbUda();

  xbInt16 AddTokenForKey( const xbString &sKey, const xbString &sToken );
  void    Clear();
  xbInt16 DelTokenForKey( const xbString &sKey );
  xbInt16 GetTokenCnt() const;
  xbInt16 GetTokenForKey( const xbString &sKey, xbString &sData );
  xbInt16 UpdTokenForKey( const xbString &sKey, const xbString &sToken );
  void    DumpUda() const;

 private:
   xbLinkListOrd<xbString> llOrd;

};
}        /* namespace */
#endif   /* XB_EXPRESSION_SUPPORT */
#endif   /* __XBUDA_H__ */