13#include "wvlinkerhack.h"
22 return new UniDefGen(wvcreate<IUniConfGen>(s, _obj));
46 char *r = strchr(p,
'/');
51 char *s = strchr(q,
'\0');
57 result = finddefault(key, r, q);
64 result = finddefault(key, r, q);
77 if (in.len() < 2 || in[0] !=
'*')
80 const char *s = in.
cstr();
88 for (
int i = 0; i < idx; i++)
95 while (!k.last().iswild())
115 WvString tmp_key(unmapped_key), tmp(
"");
116 char *p = tmp_key.edit();
118 tmp.setsize(strlen(tmp_key) * 2);
119 char *q = tmp.
edit();
122 mapped_key = finddefault(unmapped_key, p, q);
124 mapped_key = unmapped_key;
134 if (
keymap(key, mapped_key))
135 return replacewildcard(key, mapped_key,
138 return WvString::null;
The basic interface which is included by all other XPLC interfaces and objects.
An abstract data container that backs a UniConf tree.
virtual void set(const UniConfKey &key, WvStringParm value)=0
Stores a string value for a key into the registry.
Represents a UniConf key which is a path in a hierarchy structured much like the traditional Unix fil...
int numsegments() const
Returns the number of segments in this path.
UniConfKey segment(int n) const
Returns the specified segment of the path.
virtual void set(const UniConfKey &key, WvStringParm value)
Stores a string value for a key into the registry.
virtual bool keymap(const UniConfKey &unmapped_key, UniConfKey &mapped_key)
A mapping function for filters that remap one keyspace onto another.
virtual WvString get(const UniConfKey &key)
Fetches a string value for a key from the registry.
IUniConfGen * inner() const
Returns the inner generator.
virtual bool exists(const UniConfKey &key)
Without fetching its value, returns true if a key exists.
A WvFastString acts exactly like a WvString, but can take (const char *) strings without needing to a...
const char * cstr() const
return a (const char *) for this string.
A type-safe version of WvMonikerBase that lets you provide create functions for object types other th...
WvString is an implementation of a simple and efficient printable-string class.
char * edit()
make the string editable, and return a non-const (char*)