Main Page | Data Structures | File List | Data Fields | Globals

etl_data.h

Go to the documentation of this file.
00001 /* Copyright 2005-2006 Garrett Rooney.
00002  *
00003  * Licensed under the Apache License, Version 2.0 (the "License");
00004  * you may not use this file except in compliance with the License.
00005  * You may obtain a copy of the License at
00006  *
00007  *     http://www.apache.org/licenses/LICENSE-2.0
00008  *
00009  * Unless required by applicable law or agreed to in writing, software
00010  * distributed under the License is distributed on an "AS IS" BASIS,
00011  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00012  * See the License for the specific language governing permissions and
00013  * limitations under the License.
00014  */
00015 
00016 /**
00017  * @file etl_data.h
00018  * @brief Functions for manipulating ETL Data Definition Language files
00019  */
00020 
00021 #ifndef ETL_DATA_H
00022 #define ETL_DATA_H
00023 
00024 #include "etl_resolver.h"
00025 #include "etl_error.h"
00026 
00027 #include <apr.h>
00028 #include <apr_hash.h>
00029 #include <apr_tables.h>
00030 
00031 #ifdef __cplusplus
00032 extern "C" {
00033 #endif /* __cplusplus */
00034 
00035 /**
00036  * Parse @a in, a brigade containing ETL Data Definition Language,
00037  * returning a hash holding the resulting variables in @a *data,
00038  * allocated from @a pool.
00039  *
00040  * @a resolver is used to find any included files. */
00041 etl_error_t *
00042 etl_ddl_parse(apr_hash_t **data,
00043               etl_resolver_t *resolver,
00044               apr_bucket_brigade *in,
00045               apr_pool_t *pool);
00046 
00047 /**
00048  * Parse a file @a filename that holds ETL Data Definition Language,
00049  * returning a hash holding the resulting variables in @a *data,
00050  * allocated from @a pool.
00051  *
00052  * @a resolver is used to find any included files. */
00053 etl_error_t *
00054 etl_ddl_parse_file(apr_hash_t **data,
00055                    etl_resolver_t *resolver,
00056                    const char *filename,
00057                    apr_pool_t *pool);
00058 
00059 #ifdef __cplusplus
00060 }
00061 #endif /* __cplusplus */
00062 
00063 #endif /* ETL_DATA_H */

Generated on Sat Jun 3 10:17:28 2006 for ETL by  doxygen 1.4.4