Rudiments
sensitivevalue.h
1 // Copyright (c) 1999-2018 David Muse
2 // See the COPYING file for more information.
3 
4 #ifndef RUDIMENTS_SENSITIVEVALUE_H
5 #define RUDIMENTS_SENSITIVEVALUE_H
6 
7 #include <rudiments/private/sensitivevalueincludes.h>
8 
12 enum sensitivevalue_format_t {
13  FORMAT_TEXT=0,
14  FORMAT_BINARY,
15  FORMAT_HEX
16 };
17 
18 class RUDIMENTS_DLLSPEC sensitivevalue {
19  public:
20 
23 
26 
30  void setRedirectStart(const char *delimiter);
31 
35  void setRedirectStart(const char *delimiter, uint64_t len);
36 
40  void setRedirectEnd(const char *delimiter);
41 
45  void setRedirectEnd(const char *delimiter, uint64_t len);
46 
50  void setVerbatimFormat(sensitivevalue_format_t format);
51 
55  void setFileFormat(sensitivevalue_format_t format);
56 
60  void setChompTextFile(bool chomptextfile);
61 
64  void setPath(const char *path);
65 
68  void setPath(const char *path, uint64_t len);
69 
72  void setTextExtension(const char *ext);
73 
76  void setTextExtension(const char *ext, uint64_t len);
77 
80  void setBinaryExtension(const char *ext);
81 
84  void setBinaryExtension(const char *ext, uint64_t len);
85 
88  void setHexExtension(const char *ext);
89 
92  void setHexExtension(const char *ext, uint64_t len);
93 
97  const char *getRedirectStart();
98 
104 
108  const char *getRedirectEnd();
109 
115 
118  sensitivevalue_format_t getVerbatimFormat();
119 
122  sensitivevalue_format_t getFileFormat();
123 
128 
130  const char *getPath();
131 
133  uint64_t getPathLength();
134 
137  const char *getTextExtension();
138 
142 
145  const char *getBinaryExtension();
146 
150 
153  const char *getHexExtension();
154 
158 
288  void parse(const char *in);
289 
292  void parse(const char *in, uint64_t inlen);
293 
295  const unsigned char *getValue();
296 
304  unsigned char *detachValue();
305 
312  uint64_t getValueSize();
313 
315  const char *getTextValue();
316 
325 
332  uint64_t getTextValueLength();
333 
344  void clear();
345 
346  #include <rudiments/private/sensitivevalue.h>
347 };
348 
349 #endif
Definition: sensitivevalue.h:18
const char * getHexExtension()
void setChompTextFile(bool chomptextfile)
void setRedirectStart(const char *delimiter)
void setBinaryExtension(const char *ext, uint64_t len)
const char * getRedirectEnd()
void setRedirectEnd(const char *delimiter)
unsigned char * detachValue()
uint64_t getTextExtensionLength()
void setRedirectEnd(const char *delimiter, uint64_t len)
void parse(const char *in, uint64_t inlen)
uint64_t getRedirectStartLength()
void setVerbatimFormat(sensitivevalue_format_t format)
uint64_t getTextValueLength()
void setRedirectStart(const char *delimiter, uint64_t len)
uint64_t getValueSize()
uint64_t getRedirectEndLength()
uint64_t getHexExtensionLength()
bool getChompTextFile()
sensitivevalue_format_t getVerbatimFormat()
char * detachTextValue()
sensitivevalue_format_t getFileFormat()
void parse(const char *in)
void setTextExtension(const char *ext, uint64_t len)
void setBinaryExtension(const char *ext)
void setPath(const char *path)
uint64_t getBinaryExtensionLength()
void setHexExtension(const char *ext, uint64_t len)
const unsigned char * getValue()
void setTextExtension(const char *ext)
uint64_t getPathLength()
const char * getBinaryExtension()
void setPath(const char *path, uint64_t len)
const char * getRedirectStart()
void setFileFormat(sensitivevalue_format_t format)
const char * getTextExtension()
const char * getTextValue()
const char * getPath()
void setHexExtension(const char *ext)