00001 /* 00002 * Copyright (c) Members of the EGEE Collaboration. 2004. 00003 * See http://eu-egee.org/partners/ for details on the copyright holders. 00004 * For license conditions see the license file or 00005 * http://eu-egee.org/license.html 00006 */ 00007 00008 /* 00009 * Copyright (c) 2003 EU DataGrid http://www.eu-datagrid.org/ 00010 * 00011 * $Id: pdl_variable.h,v 1.7 2004/10/13 16:37:58 msteenba Exp $ 00012 * 00013 * Copyright (c) 2003 by 00014 * G.M. Venekamp <venekamp@nikhef.nl> 00015 * NIKHEF Amsterdam, the Netherlands 00016 * 00017 * This software is distributed under a BSD-style open source 00018 * licence. For a complete description of the licence take a look 00019 * at: http://eu-datagrid.web.cern.ch/eu-datagrid/license.html 00020 * 00021 */ 00022 00023 00040 #ifndef _PDL_VARIABLE_H 00041 #define _PDL_VARIABLE_H 00042 00043 #include "pdl.h" 00044 #include "pdl_rule.h" 00045 00051 typedef struct var_s { 00052 const char* name; 00053 const char* value; 00054 BOOL okay; 00055 unsigned int lineno; 00056 struct var_s* next; 00057 } var_t; 00058 00059 00060 extern void add_variable(record_t* name, record_t* value); 00061 extern var_t* find_variable(const char* name); 00062 extern void reduce_to_var(const char** name, rule_type_t rule_type); 00063 extern void show_variables(void); 00064 extern void free_variables(void); 00065 extern var_t* get_variables(void); 00066 00067 #endif