#include <stdio.h>
Include dependency graph for pdl.h:
This graph shows which files directly or indirectly include this file:
Go to the source code of this file.
Data Structures | |
struct | plugin_s |
Structure holds a plugin name and its arguments, as well as the line number the plugin is first mentioned. More... | |
struct | record_s |
Structure is used to keep track of strings and the line they appear on. More... | |
Defines | |
#define | TRUE 1 |
Typedefs | |
typedef struct record_s | record_t |
Structure is used to keep track of strings and the line they appear on. More... | |
typedef struct plugin_s | plugin_t |
Structure holds a plugin name and its arguments, as well as the line number the plugin is first mentioned. More... | |
Enumerations | |
enum | pdl_error_t { PDL_UNKNOWN, PDL_INFO, PDL_WARNING, PDL_ERROR, PDL_SAME } |
enum | plugin_status_t { EVALUATION_START, EVALUATION_SUCCESS, EVALUATION_FAILURE } |
Functions | |
int | pdl_init (const char *name) |
const char* | pdl_path (void) |
int | yyparse_errors (void) |
int | yyerror (const char *) |
const char* | pdl_next_plugin (plugin_status_t status) |
void | set_path (record_t *_path) |
record_t* | concat_strings (record_t *s1, record_t *s2) |
const plugin_t* | get_plugins (void) |
void | warning (pdl_error_t error, const char *s,...) |
Variables | |
unsigned int | lineno = 1 |
The first line of a configuration sctipt is labeled 1. |
In this include file all general "things" can be found.
Definition in file pdl.h.
|
The evaluation manager defines its own boolean type. It first undefines any existing type defenitions before it defines it itself. |
|
Structure holds a plugin name and its arguments, as well as the line number the plugin is first mentioned.
|
|
Structure is used to keep track of strings and the line they appear on.
When lex finds a match, this structure is used to keep track of the relevant information. The matchig string as well as the line number are saved. The line number can be used for later references when an error related to the symbol has occured. This allows for easier debugging of the configuration file. |
|
Different levels of error logging. |
|
Guide the selection of the next plugin. |
|
Concatenate two strings. The orginal two strings are freed. When the concatenation fails, the origial strings are still freed. The actual concatenation is done by _concat_strings().
Definition at line 481 of file pdl_main.c. |
|
Get a list of plugins as known by the configuration file.
Definition at line 130 of file pdl_main.c. Referenced by getPluginNameAndArgs().
|
|
Init the pdl engine. The function takes one arguments, the name of a configuration file to use.
Definition at line 72 of file pdl_main.c. |
|
Find the next plugin to evaluate based on the return status of the previous plugin evaluation. There are three statuses, two of which are rather obvious: either the previous evaluation has succeeded (EVALUATION_SUCCESS), or it has failed (EVALUATION_FAILURE). Based on these results, the next plugin should be the true_branch or false_branch respectively. There is one situation where there is no previous evaluation and that is at the very beginning. The very first call to this function should have (EVALUATION_START) as arguments. In this case the current state of the rule is returned as the next plugin to evaluate.
Definition at line 316 of file pdl_main.c. |
|
Get the path.
Definition at line 394 of file pdl_main.c. Referenced by getPluginNameAndArgs(), and pdl_next_plugin().
|
|
Function is called when the parser has found the value of the reserved path word. This function acts as a wrapper for the _set_path() function.
Definition at line 424 of file pdl_main.c. |
|
Display a warning message.
Definition at line 562 of file pdl_main.c. |
|
When yacc encounters an error during the parsing process of the configuration file, it calls yyerror(). The actual message formatting is done in waring();
Definition at line 407 of file pdl_main.c. |
|
Tell if there were errors/warning during parsing.
Definition at line 118 of file pdl_main.c. Referenced by startEvaluationManager().
|