You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucy.apache.org by ma...@apache.org on 2012/06/18 06:24:55 UTC
[lucy-commits] svn commit: r1351204 - in /lucy/trunk/charmonizer/src/Charmonizer/Core:
ConfWriterC.c ConfWriterC.h
Author: marvin
Date: Mon Jun 18 04:24:55 2012
New Revision: 1351204
URL: http://svn.apache.org/viewvc?rev=1351204&view=rev
Log:
Shrink ConfWriterC exposed API.
Reduce the external API for ConfWriterC down to a single routine
enabling the module.
Modified:
lucy/trunk/charmonizer/src/Charmonizer/Core/ConfWriterC.c
lucy/trunk/charmonizer/src/Charmonizer/Core/ConfWriterC.h
Modified: lucy/trunk/charmonizer/src/Charmonizer/Core/ConfWriterC.c
URL: http://svn.apache.org/viewvc/lucy/trunk/charmonizer/src/Charmonizer/Core/ConfWriterC.c?rev=1351204&r1=1351203&r2=1351204&view=diff
==============================================================================
--- lucy/trunk/charmonizer/src/Charmonizer/Core/ConfWriterC.c (original)
+++ lucy/trunk/charmonizer/src/Charmonizer/Core/ConfWriterC.c Mon Jun 18 04:24:55 2012
@@ -60,16 +60,33 @@ S_push_def_list_item(const char *str1, c
static void
S_clear_def_list(void);
+static void
+S_ConfWriterC_clean_up(void);
+static void
+S_ConfWriterC_vappend_conf(const char *fmt, va_list args);
+static void
+S_ConfWriterC_add_def(const char *sym, const char *value);
+static void
+S_ConfWriterC_add_typedef(const char *type, const char *alias);
+static void
+S_ConfWriterC_add_sys_include(const char *header);
+static void
+S_ConfWriterC_add_local_include(const char *header);
+static void
+S_ConfWriterC_start_module(const char *module_name);
+static void
+S_ConfWriterC_end_module(void);
+
void
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 = S_ConfWriterC_clean_up;
+ CWC_conf_writer.vappend_conf = S_ConfWriterC_vappend_conf;
+ CWC_conf_writer.add_def = S_ConfWriterC_add_def;
+ CWC_conf_writer.add_typedef = S_ConfWriterC_add_typedef;
+ CWC_conf_writer.add_sys_include = S_ConfWriterC_add_sys_include;
+ CWC_conf_writer.add_local_include = S_ConfWriterC_add_local_include;
+ CWC_conf_writer.start_module = S_ConfWriterC_start_module;
+ CWC_conf_writer.end_module = S_ConfWriterC_end_module;
S_open_charmony_h(NULL);
ConfWriter_add_writer(&CWC_conf_writer);
return;
@@ -97,8 +114,8 @@ S_open_charmony_h(const char *charmony_s
);
}
-void
-ConfWriterC_clean_up(void) {
+static void
+S_ConfWriterC_clean_up(void) {
/* Write the last bit of charmony.h and close. */
fprintf(charmony_fh, "#endif /* H_CHARMONY */\n\n");
if (fclose(charmony_fh)) {
@@ -106,17 +123,8 @@ ConfWriterC_clean_up(void) {
}
}
-void
-ConfWriterC_append_conf(const char *fmt, ...) {
- va_list args;
-
- va_start(args, fmt);
- ConfWriterC_vappend_conf(fmt, args);
- va_end(args);
-}
-
-void
-ConfWriterC_vappend_conf(const char *fmt, va_list args) {
+static void
+S_ConfWriterC_vappend_conf(const char *fmt, va_list args) {
vfprintf(charmony_fh, fmt, args);
}
@@ -136,8 +144,8 @@ S_sym_is_uppercase(const char *sym) {
return true;
}
-void
-ConfWriterC_add_def(const char *sym, const char *value) {
+static void
+S_ConfWriterC_add_def(const char *sym, const char *value) {
S_push_def_list_item(sym, value, CONFELEM_DEF);
}
@@ -161,8 +169,8 @@ S_append_def_to_conf(const char *sym, co
}
}
-void
-ConfWriterC_add_typedef(const char *type, const char *alias) {
+static void
+S_ConfWriterC_add_typedef(const char *type, const char *alias) {
S_push_def_list_item(alias, type, CONFELEM_TYPEDEF);
}
@@ -176,8 +184,8 @@ S_append_typedef_to_conf(const char *typ
}
}
-void
-ConfWriterC_add_sys_include(const char *header) {
+static void
+S_ConfWriterC_add_sys_include(const char *header) {
S_push_def_list_item(header, NULL, CONFELEM_SYS_INCLUDE);
}
@@ -186,8 +194,8 @@ S_append_sys_include_to_conf(const char
fprintf(charmony_fh, "#include <%s>\n", header);
}
-void
-ConfWriterC_add_local_include(const char *header) {
+static void
+S_ConfWriterC_add_local_include(const char *header) {
S_push_def_list_item(header, NULL, CONFELEM_LOCAL_INCLUDE);
}
@@ -196,13 +204,13 @@ S_append_local_include_to_conf(const cha
fprintf(charmony_fh, "#include \"%s\"\n", header);
}
-void
-ConfWriterC_start_module(const char *module_name) {
- ConfWriterC_append_conf("\n/* %s */\n", module_name);
+static void
+S_ConfWriterC_start_module(const char *module_name) {
+ fprintf(charmony_fh, "\n/* %s */\n", module_name);
}
-void
-ConfWriterC_end_module(void) {
+static void
+S_ConfWriterC_end_module(void) {
size_t i;
for (i = 0; i < def_count; i++) {
switch (defs[i].type) {
@@ -225,7 +233,7 @@ ConfWriterC_end_module(void) {
}
/* Write out short names. */
- ConfWriterC_append_conf(
+ fprintf(charmony_fh,
"\n#if defined(CHY_USE_SHORT_NAMES) "
"|| defined(CHAZ_USE_SHORT_NAMES)\n"
);
@@ -239,8 +247,8 @@ ConfWriterC_end_module(void) {
if (!value || strcmp(sym, value) != 0) {
const char *prefix = S_sym_is_uppercase(sym)
? "CHY_" : "chy_";
- ConfWriterC_append_conf(" #define %s %s%s\n", sym,
- prefix, sym);
+ fprintf(charmony_fh, " #define %s %s%s\n", sym,
+ prefix, sym);
}
}
break;
@@ -254,8 +262,8 @@ ConfWriterC_end_module(void) {
}
}
- ConfWriterC_append_conf("#endif /* USE_SHORT_NAMES */\n");
- ConfWriterC_append_conf("\n");
+ fprintf(charmony_fh, "#endif /* USE_SHORT_NAMES */\n");
+ fprintf(charmony_fh, "\n");
S_clear_def_list();
}
Modified: lucy/trunk/charmonizer/src/Charmonizer/Core/ConfWriterC.h
URL: http://svn.apache.org/viewvc/lucy/trunk/charmonizer/src/Charmonizer/Core/ConfWriterC.h?rev=1351204&r1=1351203&r2=1351204&view=diff
==============================================================================
--- lucy/trunk/charmonizer/src/Charmonizer/Core/ConfWriterC.h (original)
+++ lucy/trunk/charmonizer/src/Charmonizer/Core/ConfWriterC.h Mon Jun 18 04:24:55 2012
@@ -24,70 +24,13 @@
extern "C" {
#endif
-#include <stddef.h>
-#include <stdarg.h>
-#include "Charmonizer/Core/Defines.h"
-
/* Enable writing config to a C header file.
*/
void
chaz_ConfWriterC_enable(void);
-/* Close the include guard on charmony.h, then close the file. Delete temp
- * files and perform any other needed cleanup.
- */
-void
-chaz_ConfWriterC_clean_up(void);
-
-/* Print output to charmony.h.
- */
-void
-chaz_ConfWriterC_append_conf(const char *fmt, ...);
-
-void
-chaz_ConfWriterC_vappend_conf(const char *fmt, va_list args);
-
-/* Add a pound-define.
- */
-void
-chaz_ConfWriterC_add_def(const char *sym, const char *value);
-
-/* Add a typedef.
- */
-void
-chaz_ConfWriterC_add_typedef(const char *type, const char *alias);
-
-/* Pound-include a system header (within angle brackets).
- */
-void
-chaz_ConfWriterC_add_sys_include(const char *header);
-
-/* Pound-include a locally created header (within quotes).
- */
-void
-chaz_ConfWriterC_add_local_include(const char *header);
-
-/* Print a "chapter heading" comment in the conf file when starting a module.
- */
-void
-chaz_ConfWriterC_start_module(const char *module_name);
-
-/* Leave a little whitespace at the end of each module.
- */
-void
-chaz_ConfWriterC_end_module(void);
-
#ifdef CHAZ_USE_SHORT_NAMES
#define ConfWriterC_enable chaz_ConfWriterC_enable
- #define ConfWriterC_clean_up chaz_ConfWriterC_clean_up
- #define ConfWriterC_start_module chaz_ConfWriterC_start_module
- #define ConfWriterC_end_module chaz_ConfWriterC_end_module
- #define ConfWriterC_append_conf chaz_ConfWriterC_append_conf
- #define ConfWriterC_vappend_conf chaz_ConfWriterC_vappend_conf
- #define ConfWriterC_add_def chaz_ConfWriterC_add_def
- #define ConfWriterC_add_typedef chaz_ConfWriterC_add_typedef
- #define ConfWriterC_add_sys_include chaz_ConfWriterC_add_sys_include
- #define ConfWriterC_add_local_include chaz_ConfWriterC_add_local_include
#endif
#ifdef __cplusplus