diff options
Diffstat (limited to 'modules/libpref/prefread.h')
-rw-r--r-- | modules/libpref/prefread.h | 118 |
1 files changed, 0 insertions, 118 deletions
diff --git a/modules/libpref/prefread.h b/modules/libpref/prefread.h deleted file mode 100644 index 2a09b30b6..000000000 --- a/modules/libpref/prefread.h +++ /dev/null @@ -1,118 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#ifndef prefread_h__ -#define prefread_h__ - -#include "prefapi.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * Callback function used to notify consumer of preference name value pairs. - * The pref name and value must be copied by the implementor of the callback - * if they are needed beyond the scope of the callback function. - * - * @param closure - * user data passed to PREF_InitParseState - * @param pref - * preference name - * @param val - * preference value - * @param type - * preference type (PREF_STRING, PREF_INT, or PREF_BOOL) - * @param defPref - * preference type (true: default, false: user preference) - * @param stickyPref - * default preference marked as a "sticky" pref - */ -typedef void (*PrefReader)(void *closure, - const char *pref, - PrefValue val, - PrefType type, - bool defPref, - bool stickyPref); - -/** - * Report any errors or warnings we encounter during parsing. - */ -typedef void (*PrefParseErrorReporter)(const char* message, int line, bool error); - -/* structure fields are private */ -typedef struct PrefParseState { - PrefReader reader; - PrefParseErrorReporter reporter; - void *closure; - int state; /* PREF_PARSE_... */ - int nextstate; /* sometimes used... */ - const char *smatch; /* string to match */ - int sindex; /* next char of smatch to check */ - /* also, counter in \u parsing */ - char16_t utf16[2]; /* parsing UTF16 (\u) escape */ - int esclen; /* length in esctmp */ - char esctmp[6]; /* raw escape to put back if err */ - char quotechar; /* char delimiter for quotations */ - char *lb; /* line buffer (only allocation) */ - char *lbcur; /* line buffer cursor */ - char *lbend; /* line buffer end */ - char *vb; /* value buffer (ptr into lb) */ - PrefType vtype; /* PREF_STRING,INT,BOOL */ - bool fdefault; /* true if (default) pref */ - bool fstickydefault; /* true if (sticky) pref */ -} PrefParseState; - -/** - * PREF_InitParseState - * - * Called to initialize a PrefParseState instance. - * - * @param ps - * PrefParseState instance. - * @param reader - * PrefReader callback function, which will be called once for each - * preference name value pair extracted. - * @param reporter - * PrefParseErrorReporter callback function, which will be called if we - * encounter any errors (stop) or warnings (continue) during parsing. - * @param closure - * PrefReader closure. - */ -void PREF_InitParseState(PrefParseState *ps, PrefReader reader, - PrefParseErrorReporter reporter, void *closure); - -/** - * PREF_FinalizeParseState - * - * Called to release any memory in use by the PrefParseState instance. - * - * @param ps - * PrefParseState instance. - */ -void PREF_FinalizeParseState(PrefParseState *ps); - -/** - * PREF_ParseBuf - * - * Called to parse a buffer containing some portion of a preference file. This - * function may be called repeatedly as new data is made available. The - * PrefReader callback function passed PREF_InitParseState will be called as - * preference name value pairs are extracted from the data. - * - * @param ps - * PrefParseState instance. Must have been initialized. - * @param buf - * Raw buffer containing data to be parsed. - * @param bufLen - * Length of buffer. - * - * @return false if buffer contains malformed content. - */ -bool PREF_ParseBuf(PrefParseState *ps, const char *buf, int bufLen); - -#ifdef __cplusplus -} -#endif -#endif /* prefread_h__ */ |