You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucy.apache.org by nw...@apache.org on 2012/11/13 03:13:13 UTC
[lucy-commits] [6/16] git commit: refs/heads/master - Regenerate charmonizer.c
Regenerate charmonizer.c
Project: http://git-wip-us.apache.org/repos/asf/lucy/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucy/commit/1c1963eb
Tree: http://git-wip-us.apache.org/repos/asf/lucy/tree/1c1963eb
Diff: http://git-wip-us.apache.org/repos/asf/lucy/diff/1c1963eb
Branch: refs/heads/master
Commit: 1c1963eb58e9a087113867be8816414588464397
Parents: c7e5e6c
Author: Nick Wellnhofer <we...@aevum.de>
Authored: Sun Nov 4 13:58:04 2012 +0100
Committer: Nick Wellnhofer <we...@aevum.de>
Committed: Mon Nov 12 21:07:26 2012 +0100
----------------------------------------------------------------------
clownfish/compiler/common/charmonizer.c | 119 +++++++++++++++++++-------
clownfish/runtime/common/charmonizer.c | 119 +++++++++++++++++++-------
common/charmonizer.c | 119 +++++++++++++++++++-------
3 files changed, 261 insertions(+), 96 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucy/blob/1c1963eb/clownfish/compiler/common/charmonizer.c
----------------------------------------------------------------------
diff --git a/clownfish/compiler/common/charmonizer.c b/clownfish/compiler/common/charmonizer.c
index 349ff48..030e5d9 100644
--- a/clownfish/compiler/common/charmonizer.c
+++ b/clownfish/compiler/common/charmonizer.c
@@ -139,6 +139,11 @@ chaz_ConfWriter_add_def(const char *sym, const char *value);
void
chaz_ConfWriter_add_typedef(const char *type, const char *alias);
+/* Add a globally scoped typedef.
+ */
+void
+chaz_ConfWriter_add_global_typedef(const char *type, const char *alias);
+
/* Pound-include a system header (within angle brackets).
*/
void
@@ -171,6 +176,8 @@ typedef void
typedef void
(*chaz_ConfWriter_add_typedef_t)(const char *type, const char *alias);
typedef void
+(*chaz_ConfWriter_add_global_typedef_t)(const char *type, const char *alias);
+typedef void
(*chaz_ConfWriter_add_sys_include_t)(const char *header);
typedef void
(*chaz_ConfWriter_add_local_include_t)(const char *header);
@@ -179,14 +186,15 @@ typedef void
typedef void
(*chaz_ConfWriter_end_module_t)(void);
typedef struct chaz_ConfWriter {
- chaz_ConfWriter_clean_up_t clean_up;
- chaz_ConfWriter_vappend_conf_t vappend_conf;
- chaz_ConfWriter_add_def_t add_def;
- chaz_ConfWriter_add_typedef_t add_typedef;
- chaz_ConfWriter_add_sys_include_t add_sys_include;
- chaz_ConfWriter_add_local_include_t add_local_include;
- chaz_ConfWriter_start_module_t start_module;
- chaz_ConfWriter_end_module_t end_module;
+ chaz_ConfWriter_clean_up_t clean_up;
+ chaz_ConfWriter_vappend_conf_t vappend_conf;
+ chaz_ConfWriter_add_def_t add_def;
+ chaz_ConfWriter_add_typedef_t add_typedef;
+ chaz_ConfWriter_add_global_typedef_t add_global_typedef;
+ chaz_ConfWriter_add_sys_include_t add_sys_include;
+ chaz_ConfWriter_add_local_include_t add_local_include;
+ chaz_ConfWriter_start_module_t start_module;
+ chaz_ConfWriter_end_module_t end_module;
} chaz_ConfWriter;
#endif /* H_CHAZ_CONFWRITER */
@@ -968,6 +976,14 @@ chaz_ConfWriter_add_typedef(const char *type, const char *alias) {
}
void
+chaz_ConfWriter_add_global_typedef(const char *type, const char *alias) {
+ size_t i;
+ for (i = 0; i < chaz_CW.num_writers; i++) {
+ chaz_CW.writers[i]->add_global_typedef(type, alias);
+ }
+}
+
+void
chaz_ConfWriter_add_sys_include(const char *header) {
size_t i;
for (i = 0; i < chaz_CW.num_writers; i++) {
@@ -1027,6 +1043,7 @@ chaz_ConfWriter_add_writer(chaz_ConfWriter *writer) {
typedef enum chaz_ConfElemType {
CHAZ_CONFELEM_DEF,
CHAZ_CONFELEM_TYPEDEF,
+ CHAZ_CONFELEM_GLOBAL_TYPEDEF,
CHAZ_CONFELEM_SYS_INCLUDE,
CHAZ_CONFELEM_LOCAL_INCLUDE
} chaz_ConfElemType;
@@ -1070,6 +1087,8 @@ chaz_ConfWriterC_add_def(const char *sym, const char *value);
static void
chaz_ConfWriterC_add_typedef(const char *type, const char *alias);
static void
+chaz_ConfWriterC_add_global_typedef(const char *type, const char *alias);
+static void
chaz_ConfWriterC_add_sys_include(const char *header);
static void
chaz_ConfWriterC_add_local_include(const char *header);
@@ -1080,14 +1099,15 @@ chaz_ConfWriterC_end_module(void);
void
chaz_ConfWriterC_enable(void) {
- CWC_conf_writer.clean_up = chaz_ConfWriterC_clean_up;
- CWC_conf_writer.vappend_conf = chaz_ConfWriterC_vappend_conf;
- CWC_conf_writer.add_def = chaz_ConfWriterC_add_def;
- CWC_conf_writer.add_typedef = chaz_ConfWriterC_add_typedef;
- CWC_conf_writer.add_sys_include = chaz_ConfWriterC_add_sys_include;
- CWC_conf_writer.add_local_include = chaz_ConfWriterC_add_local_include;
- CWC_conf_writer.start_module = chaz_ConfWriterC_start_module;
- CWC_conf_writer.end_module = chaz_ConfWriterC_end_module;
+ CWC_conf_writer.clean_up = chaz_ConfWriterC_clean_up;
+ CWC_conf_writer.vappend_conf = chaz_ConfWriterC_vappend_conf;
+ CWC_conf_writer.add_def = chaz_ConfWriterC_add_def;
+ CWC_conf_writer.add_typedef = chaz_ConfWriterC_add_typedef;
+ CWC_conf_writer.add_global_typedef = chaz_ConfWriterC_add_global_typedef;
+ CWC_conf_writer.add_sys_include = chaz_ConfWriterC_add_sys_include;
+ CWC_conf_writer.add_local_include = chaz_ConfWriterC_add_local_include;
+ CWC_conf_writer.start_module = chaz_ConfWriterC_start_module;
+ CWC_conf_writer.end_module = chaz_ConfWriterC_end_module;
chaz_ConfWriterC_open_charmony_h(NULL);
chaz_ConfWriter_add_writer(&CWC_conf_writer);
return;
@@ -1186,6 +1206,18 @@ chaz_ConfWriterC_append_typedef_to_conf(const char *type, const char *alias) {
}
static void
+chaz_ConfWriterC_add_global_typedef(const char *type, const char *alias) {
+ chaz_ConfWriterC_push_def_list_item(alias, type,
+ CHAZ_CONFELEM_GLOBAL_TYPEDEF);
+}
+
+static void
+chaz_ConfWriterC_append_global_typedef_to_conf(const char *type,
+ const char *alias) {
+ fprintf(chaz_ConfWriterC.fh, "typedef %s %s;\n", type, alias);
+}
+
+static void
chaz_ConfWriterC_add_sys_include(const char *header) {
chaz_ConfWriterC_push_def_list_item(header, NULL,
CHAZ_CONFELEM_SYS_INCLUDE);
@@ -1226,6 +1258,10 @@ chaz_ConfWriterC_end_module(void) {
chaz_ConfWriterC_append_typedef_to_conf(defs[i].str2,
defs[i].str1);
break;
+ case CHAZ_CONFELEM_GLOBAL_TYPEDEF:
+ chaz_ConfWriterC_append_global_typedef_to_conf(defs[i].str2,
+ defs[i].str1);
+ break;
case CHAZ_CONFELEM_SYS_INCLUDE:
chaz_ConfWriterC_append_sys_include_to_conf(defs[i].str1);
break;
@@ -1259,6 +1295,7 @@ chaz_ConfWriterC_end_module(void) {
}
}
break;
+ case CHAZ_CONFELEM_GLOBAL_TYPEDEF:
case CHAZ_CONFELEM_SYS_INCLUDE:
case CHAZ_CONFELEM_LOCAL_INCLUDE:
/* no-op */
@@ -1339,6 +1376,8 @@ chaz_ConfWriterPerl_add_def(const char *sym, const char *value);
static void
chaz_ConfWriterPerl_add_typedef(const char *type, const char *alias);
static void
+chaz_ConfWriterPerl_add_global_typedef(const char *type, const char *alias);
+static void
chaz_ConfWriterPerl_add_sys_include(const char *header);
static void
chaz_ConfWriterPerl_add_local_include(const char *header);
@@ -1349,14 +1388,15 @@ chaz_ConfWriterPerl_end_module(void);
void
chaz_ConfWriterPerl_enable(void) {
- CWPerl_conf_writer.clean_up = chaz_ConfWriterPerl_clean_up;
- CWPerl_conf_writer.vappend_conf = chaz_ConfWriterPerl_vappend_conf;
- CWPerl_conf_writer.add_def = chaz_ConfWriterPerl_add_def;
- CWPerl_conf_writer.add_typedef = chaz_ConfWriterPerl_add_typedef;
- CWPerl_conf_writer.add_sys_include = chaz_ConfWriterPerl_add_sys_include;
- CWPerl_conf_writer.add_local_include = chaz_ConfWriterPerl_add_local_include;
- CWPerl_conf_writer.start_module = chaz_ConfWriterPerl_start_module;
- CWPerl_conf_writer.end_module = chaz_ConfWriterPerl_end_module;
+ CWPerl_conf_writer.clean_up = chaz_ConfWriterPerl_clean_up;
+ CWPerl_conf_writer.vappend_conf = chaz_ConfWriterPerl_vappend_conf;
+ CWPerl_conf_writer.add_def = chaz_ConfWriterPerl_add_def;
+ CWPerl_conf_writer.add_typedef = chaz_ConfWriterPerl_add_typedef;
+ CWPerl_conf_writer.add_global_typedef = chaz_ConfWriterPerl_add_global_typedef;
+ CWPerl_conf_writer.add_sys_include = chaz_ConfWriterPerl_add_sys_include;
+ CWPerl_conf_writer.add_local_include = chaz_ConfWriterPerl_add_local_include;
+ CWPerl_conf_writer.start_module = chaz_ConfWriterPerl_start_module;
+ CWPerl_conf_writer.end_module = chaz_ConfWriterPerl_end_module;
chaz_ConfWriterPerl_open_config_pm();
chaz_ConfWriter_add_writer(&CWPerl_conf_writer);
return;
@@ -1482,6 +1522,12 @@ chaz_ConfWriterPerl_add_typedef(const char *type, const char *alias) {
}
static void
+chaz_ConfWriterPerl_add_global_typedef(const char *type, const char *alias) {
+ (void)type;
+ (void)alias;
+}
+
+static void
chaz_ConfWriterPerl_add_sys_include(const char *header) {
(void)header;
}
@@ -1534,6 +1580,8 @@ chaz_ConfWriterRuby_add_def(const char *sym, const char *value);
static void
chaz_ConfWriterRuby_add_typedef(const char *type, const char *alias);
static void
+chaz_ConfWriterRuby_add_global_typedef(const char *type, const char *alias);
+static void
chaz_ConfWriterRuby_add_sys_include(const char *header);
static void
chaz_ConfWriterRuby_add_local_include(const char *header);
@@ -1544,14 +1592,15 @@ chaz_ConfWriterRuby_end_module(void);
void
chaz_ConfWriterRuby_enable(void) {
- CWRuby_conf_writer.clean_up = chaz_ConfWriterRuby_clean_up;
- CWRuby_conf_writer.vappend_conf = chaz_ConfWriterRuby_vappend_conf;
- CWRuby_conf_writer.add_def = chaz_ConfWriterRuby_add_def;
- CWRuby_conf_writer.add_typedef = chaz_ConfWriterRuby_add_typedef;
- CWRuby_conf_writer.add_sys_include = chaz_ConfWriterRuby_add_sys_include;
- CWRuby_conf_writer.add_local_include = chaz_ConfWriterRuby_add_local_include;
- CWRuby_conf_writer.start_module = chaz_ConfWriterRuby_start_module;
- CWRuby_conf_writer.end_module = chaz_ConfWriterRuby_end_module;
+ CWRuby_conf_writer.clean_up = chaz_ConfWriterRuby_clean_up;
+ CWRuby_conf_writer.vappend_conf = chaz_ConfWriterRuby_vappend_conf;
+ CWRuby_conf_writer.add_def = chaz_ConfWriterRuby_add_def;
+ CWRuby_conf_writer.add_typedef = chaz_ConfWriterRuby_add_typedef;
+ CWRuby_conf_writer.add_global_typedef = chaz_ConfWriterRuby_add_global_typedef;
+ CWRuby_conf_writer.add_sys_include = chaz_ConfWriterRuby_add_sys_include;
+ CWRuby_conf_writer.add_local_include = chaz_ConfWriterRuby_add_local_include;
+ CWRuby_conf_writer.start_module = chaz_ConfWriterRuby_start_module;
+ CWRuby_conf_writer.end_module = chaz_ConfWriterRuby_end_module;
chaz_ConfWriterRuby_open_config_rb();
chaz_ConfWriter_add_writer(&CWRuby_conf_writer);
return;
@@ -1675,6 +1724,12 @@ chaz_ConfWriterRuby_add_typedef(const char *type, const char *alias) {
}
static void
+chaz_ConfWriterRuby_add_global_typedef(const char *type, const char *alias) {
+ (void)type;
+ (void)alias;
+}
+
+static void
chaz_ConfWriterRuby_add_sys_include(const char *header) {
(void)header;
}
http://git-wip-us.apache.org/repos/asf/lucy/blob/1c1963eb/clownfish/runtime/common/charmonizer.c
----------------------------------------------------------------------
diff --git a/clownfish/runtime/common/charmonizer.c b/clownfish/runtime/common/charmonizer.c
index 7bb318d..5e5df1f 100644
--- a/clownfish/runtime/common/charmonizer.c
+++ b/clownfish/runtime/common/charmonizer.c
@@ -139,6 +139,11 @@ chaz_ConfWriter_add_def(const char *sym, const char *value);
void
chaz_ConfWriter_add_typedef(const char *type, const char *alias);
+/* Add a globally scoped typedef.
+ */
+void
+chaz_ConfWriter_add_global_typedef(const char *type, const char *alias);
+
/* Pound-include a system header (within angle brackets).
*/
void
@@ -171,6 +176,8 @@ typedef void
typedef void
(*chaz_ConfWriter_add_typedef_t)(const char *type, const char *alias);
typedef void
+(*chaz_ConfWriter_add_global_typedef_t)(const char *type, const char *alias);
+typedef void
(*chaz_ConfWriter_add_sys_include_t)(const char *header);
typedef void
(*chaz_ConfWriter_add_local_include_t)(const char *header);
@@ -179,14 +186,15 @@ typedef void
typedef void
(*chaz_ConfWriter_end_module_t)(void);
typedef struct chaz_ConfWriter {
- chaz_ConfWriter_clean_up_t clean_up;
- chaz_ConfWriter_vappend_conf_t vappend_conf;
- chaz_ConfWriter_add_def_t add_def;
- chaz_ConfWriter_add_typedef_t add_typedef;
- chaz_ConfWriter_add_sys_include_t add_sys_include;
- chaz_ConfWriter_add_local_include_t add_local_include;
- chaz_ConfWriter_start_module_t start_module;
- chaz_ConfWriter_end_module_t end_module;
+ chaz_ConfWriter_clean_up_t clean_up;
+ chaz_ConfWriter_vappend_conf_t vappend_conf;
+ chaz_ConfWriter_add_def_t add_def;
+ chaz_ConfWriter_add_typedef_t add_typedef;
+ chaz_ConfWriter_add_global_typedef_t add_global_typedef;
+ chaz_ConfWriter_add_sys_include_t add_sys_include;
+ chaz_ConfWriter_add_local_include_t add_local_include;
+ chaz_ConfWriter_start_module_t start_module;
+ chaz_ConfWriter_end_module_t end_module;
} chaz_ConfWriter;
#endif /* H_CHAZ_CONFWRITER */
@@ -1347,6 +1355,14 @@ chaz_ConfWriter_add_typedef(const char *type, const char *alias) {
}
void
+chaz_ConfWriter_add_global_typedef(const char *type, const char *alias) {
+ size_t i;
+ for (i = 0; i < chaz_CW.num_writers; i++) {
+ chaz_CW.writers[i]->add_global_typedef(type, alias);
+ }
+}
+
+void
chaz_ConfWriter_add_sys_include(const char *header) {
size_t i;
for (i = 0; i < chaz_CW.num_writers; i++) {
@@ -1406,6 +1422,7 @@ chaz_ConfWriter_add_writer(chaz_ConfWriter *writer) {
typedef enum chaz_ConfElemType {
CHAZ_CONFELEM_DEF,
CHAZ_CONFELEM_TYPEDEF,
+ CHAZ_CONFELEM_GLOBAL_TYPEDEF,
CHAZ_CONFELEM_SYS_INCLUDE,
CHAZ_CONFELEM_LOCAL_INCLUDE
} chaz_ConfElemType;
@@ -1449,6 +1466,8 @@ chaz_ConfWriterC_add_def(const char *sym, const char *value);
static void
chaz_ConfWriterC_add_typedef(const char *type, const char *alias);
static void
+chaz_ConfWriterC_add_global_typedef(const char *type, const char *alias);
+static void
chaz_ConfWriterC_add_sys_include(const char *header);
static void
chaz_ConfWriterC_add_local_include(const char *header);
@@ -1459,14 +1478,15 @@ chaz_ConfWriterC_end_module(void);
void
chaz_ConfWriterC_enable(void) {
- CWC_conf_writer.clean_up = chaz_ConfWriterC_clean_up;
- CWC_conf_writer.vappend_conf = chaz_ConfWriterC_vappend_conf;
- CWC_conf_writer.add_def = chaz_ConfWriterC_add_def;
- CWC_conf_writer.add_typedef = chaz_ConfWriterC_add_typedef;
- CWC_conf_writer.add_sys_include = chaz_ConfWriterC_add_sys_include;
- CWC_conf_writer.add_local_include = chaz_ConfWriterC_add_local_include;
- CWC_conf_writer.start_module = chaz_ConfWriterC_start_module;
- CWC_conf_writer.end_module = chaz_ConfWriterC_end_module;
+ CWC_conf_writer.clean_up = chaz_ConfWriterC_clean_up;
+ CWC_conf_writer.vappend_conf = chaz_ConfWriterC_vappend_conf;
+ CWC_conf_writer.add_def = chaz_ConfWriterC_add_def;
+ CWC_conf_writer.add_typedef = chaz_ConfWriterC_add_typedef;
+ CWC_conf_writer.add_global_typedef = chaz_ConfWriterC_add_global_typedef;
+ CWC_conf_writer.add_sys_include = chaz_ConfWriterC_add_sys_include;
+ CWC_conf_writer.add_local_include = chaz_ConfWriterC_add_local_include;
+ CWC_conf_writer.start_module = chaz_ConfWriterC_start_module;
+ CWC_conf_writer.end_module = chaz_ConfWriterC_end_module;
chaz_ConfWriterC_open_charmony_h(NULL);
chaz_ConfWriter_add_writer(&CWC_conf_writer);
return;
@@ -1565,6 +1585,18 @@ chaz_ConfWriterC_append_typedef_to_conf(const char *type, const char *alias) {
}
static void
+chaz_ConfWriterC_add_global_typedef(const char *type, const char *alias) {
+ chaz_ConfWriterC_push_def_list_item(alias, type,
+ CHAZ_CONFELEM_GLOBAL_TYPEDEF);
+}
+
+static void
+chaz_ConfWriterC_append_global_typedef_to_conf(const char *type,
+ const char *alias) {
+ fprintf(chaz_ConfWriterC.fh, "typedef %s %s;\n", type, alias);
+}
+
+static void
chaz_ConfWriterC_add_sys_include(const char *header) {
chaz_ConfWriterC_push_def_list_item(header, NULL,
CHAZ_CONFELEM_SYS_INCLUDE);
@@ -1605,6 +1637,10 @@ chaz_ConfWriterC_end_module(void) {
chaz_ConfWriterC_append_typedef_to_conf(defs[i].str2,
defs[i].str1);
break;
+ case CHAZ_CONFELEM_GLOBAL_TYPEDEF:
+ chaz_ConfWriterC_append_global_typedef_to_conf(defs[i].str2,
+ defs[i].str1);
+ break;
case CHAZ_CONFELEM_SYS_INCLUDE:
chaz_ConfWriterC_append_sys_include_to_conf(defs[i].str1);
break;
@@ -1638,6 +1674,7 @@ chaz_ConfWriterC_end_module(void) {
}
}
break;
+ case CHAZ_CONFELEM_GLOBAL_TYPEDEF:
case CHAZ_CONFELEM_SYS_INCLUDE:
case CHAZ_CONFELEM_LOCAL_INCLUDE:
/* no-op */
@@ -1718,6 +1755,8 @@ chaz_ConfWriterPerl_add_def(const char *sym, const char *value);
static void
chaz_ConfWriterPerl_add_typedef(const char *type, const char *alias);
static void
+chaz_ConfWriterPerl_add_global_typedef(const char *type, const char *alias);
+static void
chaz_ConfWriterPerl_add_sys_include(const char *header);
static void
chaz_ConfWriterPerl_add_local_include(const char *header);
@@ -1728,14 +1767,15 @@ chaz_ConfWriterPerl_end_module(void);
void
chaz_ConfWriterPerl_enable(void) {
- CWPerl_conf_writer.clean_up = chaz_ConfWriterPerl_clean_up;
- CWPerl_conf_writer.vappend_conf = chaz_ConfWriterPerl_vappend_conf;
- CWPerl_conf_writer.add_def = chaz_ConfWriterPerl_add_def;
- CWPerl_conf_writer.add_typedef = chaz_ConfWriterPerl_add_typedef;
- CWPerl_conf_writer.add_sys_include = chaz_ConfWriterPerl_add_sys_include;
- CWPerl_conf_writer.add_local_include = chaz_ConfWriterPerl_add_local_include;
- CWPerl_conf_writer.start_module = chaz_ConfWriterPerl_start_module;
- CWPerl_conf_writer.end_module = chaz_ConfWriterPerl_end_module;
+ CWPerl_conf_writer.clean_up = chaz_ConfWriterPerl_clean_up;
+ CWPerl_conf_writer.vappend_conf = chaz_ConfWriterPerl_vappend_conf;
+ CWPerl_conf_writer.add_def = chaz_ConfWriterPerl_add_def;
+ CWPerl_conf_writer.add_typedef = chaz_ConfWriterPerl_add_typedef;
+ CWPerl_conf_writer.add_global_typedef = chaz_ConfWriterPerl_add_global_typedef;
+ CWPerl_conf_writer.add_sys_include = chaz_ConfWriterPerl_add_sys_include;
+ CWPerl_conf_writer.add_local_include = chaz_ConfWriterPerl_add_local_include;
+ CWPerl_conf_writer.start_module = chaz_ConfWriterPerl_start_module;
+ CWPerl_conf_writer.end_module = chaz_ConfWriterPerl_end_module;
chaz_ConfWriterPerl_open_config_pm();
chaz_ConfWriter_add_writer(&CWPerl_conf_writer);
return;
@@ -1861,6 +1901,12 @@ chaz_ConfWriterPerl_add_typedef(const char *type, const char *alias) {
}
static void
+chaz_ConfWriterPerl_add_global_typedef(const char *type, const char *alias) {
+ (void)type;
+ (void)alias;
+}
+
+static void
chaz_ConfWriterPerl_add_sys_include(const char *header) {
(void)header;
}
@@ -1913,6 +1959,8 @@ chaz_ConfWriterRuby_add_def(const char *sym, const char *value);
static void
chaz_ConfWriterRuby_add_typedef(const char *type, const char *alias);
static void
+chaz_ConfWriterRuby_add_global_typedef(const char *type, const char *alias);
+static void
chaz_ConfWriterRuby_add_sys_include(const char *header);
static void
chaz_ConfWriterRuby_add_local_include(const char *header);
@@ -1923,14 +1971,15 @@ chaz_ConfWriterRuby_end_module(void);
void
chaz_ConfWriterRuby_enable(void) {
- CWRuby_conf_writer.clean_up = chaz_ConfWriterRuby_clean_up;
- CWRuby_conf_writer.vappend_conf = chaz_ConfWriterRuby_vappend_conf;
- CWRuby_conf_writer.add_def = chaz_ConfWriterRuby_add_def;
- CWRuby_conf_writer.add_typedef = chaz_ConfWriterRuby_add_typedef;
- CWRuby_conf_writer.add_sys_include = chaz_ConfWriterRuby_add_sys_include;
- CWRuby_conf_writer.add_local_include = chaz_ConfWriterRuby_add_local_include;
- CWRuby_conf_writer.start_module = chaz_ConfWriterRuby_start_module;
- CWRuby_conf_writer.end_module = chaz_ConfWriterRuby_end_module;
+ CWRuby_conf_writer.clean_up = chaz_ConfWriterRuby_clean_up;
+ CWRuby_conf_writer.vappend_conf = chaz_ConfWriterRuby_vappend_conf;
+ CWRuby_conf_writer.add_def = chaz_ConfWriterRuby_add_def;
+ CWRuby_conf_writer.add_typedef = chaz_ConfWriterRuby_add_typedef;
+ CWRuby_conf_writer.add_global_typedef = chaz_ConfWriterRuby_add_global_typedef;
+ CWRuby_conf_writer.add_sys_include = chaz_ConfWriterRuby_add_sys_include;
+ CWRuby_conf_writer.add_local_include = chaz_ConfWriterRuby_add_local_include;
+ CWRuby_conf_writer.start_module = chaz_ConfWriterRuby_start_module;
+ CWRuby_conf_writer.end_module = chaz_ConfWriterRuby_end_module;
chaz_ConfWriterRuby_open_config_rb();
chaz_ConfWriter_add_writer(&CWRuby_conf_writer);
return;
@@ -2054,6 +2103,12 @@ chaz_ConfWriterRuby_add_typedef(const char *type, const char *alias) {
}
static void
+chaz_ConfWriterRuby_add_global_typedef(const char *type, const char *alias) {
+ (void)type;
+ (void)alias;
+}
+
+static void
chaz_ConfWriterRuby_add_sys_include(const char *header) {
(void)header;
}
http://git-wip-us.apache.org/repos/asf/lucy/blob/1c1963eb/common/charmonizer.c
----------------------------------------------------------------------
diff --git a/common/charmonizer.c b/common/charmonizer.c
index 8653300..ea6f684 100644
--- a/common/charmonizer.c
+++ b/common/charmonizer.c
@@ -139,6 +139,11 @@ chaz_ConfWriter_add_def(const char *sym, const char *value);
void
chaz_ConfWriter_add_typedef(const char *type, const char *alias);
+/* Add a globally scoped typedef.
+ */
+void
+chaz_ConfWriter_add_global_typedef(const char *type, const char *alias);
+
/* Pound-include a system header (within angle brackets).
*/
void
@@ -171,6 +176,8 @@ typedef void
typedef void
(*chaz_ConfWriter_add_typedef_t)(const char *type, const char *alias);
typedef void
+(*chaz_ConfWriter_add_global_typedef_t)(const char *type, const char *alias);
+typedef void
(*chaz_ConfWriter_add_sys_include_t)(const char *header);
typedef void
(*chaz_ConfWriter_add_local_include_t)(const char *header);
@@ -179,14 +186,15 @@ typedef void
typedef void
(*chaz_ConfWriter_end_module_t)(void);
typedef struct chaz_ConfWriter {
- chaz_ConfWriter_clean_up_t clean_up;
- chaz_ConfWriter_vappend_conf_t vappend_conf;
- chaz_ConfWriter_add_def_t add_def;
- chaz_ConfWriter_add_typedef_t add_typedef;
- chaz_ConfWriter_add_sys_include_t add_sys_include;
- chaz_ConfWriter_add_local_include_t add_local_include;
- chaz_ConfWriter_start_module_t start_module;
- chaz_ConfWriter_end_module_t end_module;
+ chaz_ConfWriter_clean_up_t clean_up;
+ chaz_ConfWriter_vappend_conf_t vappend_conf;
+ chaz_ConfWriter_add_def_t add_def;
+ chaz_ConfWriter_add_typedef_t add_typedef;
+ chaz_ConfWriter_add_global_typedef_t add_global_typedef;
+ chaz_ConfWriter_add_sys_include_t add_sys_include;
+ chaz_ConfWriter_add_local_include_t add_local_include;
+ chaz_ConfWriter_start_module_t start_module;
+ chaz_ConfWriter_end_module_t end_module;
} chaz_ConfWriter;
#endif /* H_CHAZ_CONFWRITER */
@@ -1347,6 +1355,14 @@ chaz_ConfWriter_add_typedef(const char *type, const char *alias) {
}
void
+chaz_ConfWriter_add_global_typedef(const char *type, const char *alias) {
+ size_t i;
+ for (i = 0; i < chaz_CW.num_writers; i++) {
+ chaz_CW.writers[i]->add_global_typedef(type, alias);
+ }
+}
+
+void
chaz_ConfWriter_add_sys_include(const char *header) {
size_t i;
for (i = 0; i < chaz_CW.num_writers; i++) {
@@ -1406,6 +1422,7 @@ chaz_ConfWriter_add_writer(chaz_ConfWriter *writer) {
typedef enum chaz_ConfElemType {
CHAZ_CONFELEM_DEF,
CHAZ_CONFELEM_TYPEDEF,
+ CHAZ_CONFELEM_GLOBAL_TYPEDEF,
CHAZ_CONFELEM_SYS_INCLUDE,
CHAZ_CONFELEM_LOCAL_INCLUDE
} chaz_ConfElemType;
@@ -1449,6 +1466,8 @@ chaz_ConfWriterC_add_def(const char *sym, const char *value);
static void
chaz_ConfWriterC_add_typedef(const char *type, const char *alias);
static void
+chaz_ConfWriterC_add_global_typedef(const char *type, const char *alias);
+static void
chaz_ConfWriterC_add_sys_include(const char *header);
static void
chaz_ConfWriterC_add_local_include(const char *header);
@@ -1459,14 +1478,15 @@ chaz_ConfWriterC_end_module(void);
void
chaz_ConfWriterC_enable(void) {
- CWC_conf_writer.clean_up = chaz_ConfWriterC_clean_up;
- CWC_conf_writer.vappend_conf = chaz_ConfWriterC_vappend_conf;
- CWC_conf_writer.add_def = chaz_ConfWriterC_add_def;
- CWC_conf_writer.add_typedef = chaz_ConfWriterC_add_typedef;
- CWC_conf_writer.add_sys_include = chaz_ConfWriterC_add_sys_include;
- CWC_conf_writer.add_local_include = chaz_ConfWriterC_add_local_include;
- CWC_conf_writer.start_module = chaz_ConfWriterC_start_module;
- CWC_conf_writer.end_module = chaz_ConfWriterC_end_module;
+ CWC_conf_writer.clean_up = chaz_ConfWriterC_clean_up;
+ CWC_conf_writer.vappend_conf = chaz_ConfWriterC_vappend_conf;
+ CWC_conf_writer.add_def = chaz_ConfWriterC_add_def;
+ CWC_conf_writer.add_typedef = chaz_ConfWriterC_add_typedef;
+ CWC_conf_writer.add_global_typedef = chaz_ConfWriterC_add_global_typedef;
+ CWC_conf_writer.add_sys_include = chaz_ConfWriterC_add_sys_include;
+ CWC_conf_writer.add_local_include = chaz_ConfWriterC_add_local_include;
+ CWC_conf_writer.start_module = chaz_ConfWriterC_start_module;
+ CWC_conf_writer.end_module = chaz_ConfWriterC_end_module;
chaz_ConfWriterC_open_charmony_h(NULL);
chaz_ConfWriter_add_writer(&CWC_conf_writer);
return;
@@ -1565,6 +1585,18 @@ chaz_ConfWriterC_append_typedef_to_conf(const char *type, const char *alias) {
}
static void
+chaz_ConfWriterC_add_global_typedef(const char *type, const char *alias) {
+ chaz_ConfWriterC_push_def_list_item(alias, type,
+ CHAZ_CONFELEM_GLOBAL_TYPEDEF);
+}
+
+static void
+chaz_ConfWriterC_append_global_typedef_to_conf(const char *type,
+ const char *alias) {
+ fprintf(chaz_ConfWriterC.fh, "typedef %s %s;\n", type, alias);
+}
+
+static void
chaz_ConfWriterC_add_sys_include(const char *header) {
chaz_ConfWriterC_push_def_list_item(header, NULL,
CHAZ_CONFELEM_SYS_INCLUDE);
@@ -1605,6 +1637,10 @@ chaz_ConfWriterC_end_module(void) {
chaz_ConfWriterC_append_typedef_to_conf(defs[i].str2,
defs[i].str1);
break;
+ case CHAZ_CONFELEM_GLOBAL_TYPEDEF:
+ chaz_ConfWriterC_append_global_typedef_to_conf(defs[i].str2,
+ defs[i].str1);
+ break;
case CHAZ_CONFELEM_SYS_INCLUDE:
chaz_ConfWriterC_append_sys_include_to_conf(defs[i].str1);
break;
@@ -1638,6 +1674,7 @@ chaz_ConfWriterC_end_module(void) {
}
}
break;
+ case CHAZ_CONFELEM_GLOBAL_TYPEDEF:
case CHAZ_CONFELEM_SYS_INCLUDE:
case CHAZ_CONFELEM_LOCAL_INCLUDE:
/* no-op */
@@ -1718,6 +1755,8 @@ chaz_ConfWriterPerl_add_def(const char *sym, const char *value);
static void
chaz_ConfWriterPerl_add_typedef(const char *type, const char *alias);
static void
+chaz_ConfWriterPerl_add_global_typedef(const char *type, const char *alias);
+static void
chaz_ConfWriterPerl_add_sys_include(const char *header);
static void
chaz_ConfWriterPerl_add_local_include(const char *header);
@@ -1728,14 +1767,15 @@ chaz_ConfWriterPerl_end_module(void);
void
chaz_ConfWriterPerl_enable(void) {
- CWPerl_conf_writer.clean_up = chaz_ConfWriterPerl_clean_up;
- CWPerl_conf_writer.vappend_conf = chaz_ConfWriterPerl_vappend_conf;
- CWPerl_conf_writer.add_def = chaz_ConfWriterPerl_add_def;
- CWPerl_conf_writer.add_typedef = chaz_ConfWriterPerl_add_typedef;
- CWPerl_conf_writer.add_sys_include = chaz_ConfWriterPerl_add_sys_include;
- CWPerl_conf_writer.add_local_include = chaz_ConfWriterPerl_add_local_include;
- CWPerl_conf_writer.start_module = chaz_ConfWriterPerl_start_module;
- CWPerl_conf_writer.end_module = chaz_ConfWriterPerl_end_module;
+ CWPerl_conf_writer.clean_up = chaz_ConfWriterPerl_clean_up;
+ CWPerl_conf_writer.vappend_conf = chaz_ConfWriterPerl_vappend_conf;
+ CWPerl_conf_writer.add_def = chaz_ConfWriterPerl_add_def;
+ CWPerl_conf_writer.add_typedef = chaz_ConfWriterPerl_add_typedef;
+ CWPerl_conf_writer.add_global_typedef = chaz_ConfWriterPerl_add_global_typedef;
+ CWPerl_conf_writer.add_sys_include = chaz_ConfWriterPerl_add_sys_include;
+ CWPerl_conf_writer.add_local_include = chaz_ConfWriterPerl_add_local_include;
+ CWPerl_conf_writer.start_module = chaz_ConfWriterPerl_start_module;
+ CWPerl_conf_writer.end_module = chaz_ConfWriterPerl_end_module;
chaz_ConfWriterPerl_open_config_pm();
chaz_ConfWriter_add_writer(&CWPerl_conf_writer);
return;
@@ -1861,6 +1901,12 @@ chaz_ConfWriterPerl_add_typedef(const char *type, const char *alias) {
}
static void
+chaz_ConfWriterPerl_add_global_typedef(const char *type, const char *alias) {
+ (void)type;
+ (void)alias;
+}
+
+static void
chaz_ConfWriterPerl_add_sys_include(const char *header) {
(void)header;
}
@@ -1913,6 +1959,8 @@ chaz_ConfWriterRuby_add_def(const char *sym, const char *value);
static void
chaz_ConfWriterRuby_add_typedef(const char *type, const char *alias);
static void
+chaz_ConfWriterRuby_add_global_typedef(const char *type, const char *alias);
+static void
chaz_ConfWriterRuby_add_sys_include(const char *header);
static void
chaz_ConfWriterRuby_add_local_include(const char *header);
@@ -1923,14 +1971,15 @@ chaz_ConfWriterRuby_end_module(void);
void
chaz_ConfWriterRuby_enable(void) {
- CWRuby_conf_writer.clean_up = chaz_ConfWriterRuby_clean_up;
- CWRuby_conf_writer.vappend_conf = chaz_ConfWriterRuby_vappend_conf;
- CWRuby_conf_writer.add_def = chaz_ConfWriterRuby_add_def;
- CWRuby_conf_writer.add_typedef = chaz_ConfWriterRuby_add_typedef;
- CWRuby_conf_writer.add_sys_include = chaz_ConfWriterRuby_add_sys_include;
- CWRuby_conf_writer.add_local_include = chaz_ConfWriterRuby_add_local_include;
- CWRuby_conf_writer.start_module = chaz_ConfWriterRuby_start_module;
- CWRuby_conf_writer.end_module = chaz_ConfWriterRuby_end_module;
+ CWRuby_conf_writer.clean_up = chaz_ConfWriterRuby_clean_up;
+ CWRuby_conf_writer.vappend_conf = chaz_ConfWriterRuby_vappend_conf;
+ CWRuby_conf_writer.add_def = chaz_ConfWriterRuby_add_def;
+ CWRuby_conf_writer.add_typedef = chaz_ConfWriterRuby_add_typedef;
+ CWRuby_conf_writer.add_global_typedef = chaz_ConfWriterRuby_add_global_typedef;
+ CWRuby_conf_writer.add_sys_include = chaz_ConfWriterRuby_add_sys_include;
+ CWRuby_conf_writer.add_local_include = chaz_ConfWriterRuby_add_local_include;
+ CWRuby_conf_writer.start_module = chaz_ConfWriterRuby_start_module;
+ CWRuby_conf_writer.end_module = chaz_ConfWriterRuby_end_module;
chaz_ConfWriterRuby_open_config_rb();
chaz_ConfWriter_add_writer(&CWRuby_conf_writer);
return;
@@ -2054,6 +2103,12 @@ chaz_ConfWriterRuby_add_typedef(const char *type, const char *alias) {
}
static void
+chaz_ConfWriterRuby_add_global_typedef(const char *type, const char *alias) {
+ (void)type;
+ (void)alias;
+}
+
+static void
chaz_ConfWriterRuby_add_sys_include(const char *header) {
(void)header;
}