]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/tools/toolutil/writesrc.h
ICU-66108.tar.gz
[apple/icu.git] / icuSources / tools / toolutil / writesrc.h
index f4ca08103bbfc0fa9f461c9959ef636ee6dd9ded..35ba256793c03abd8c8e5412e9ae06e6417447a5 100644 (file)
@@ -1,3 +1,5 @@
+// © 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
 /*
 *******************************************************************************
 *
@@ -6,7 +8,7 @@
 *
 *******************************************************************************
 *   file name:  writesrc.h
-*   encoding:   US-ASCII
+*   encoding:   UTF-8
 *   tab size:   8 (not used)
 *   indentation:4
 *
@@ -21,6 +23,7 @@
 
 #include <stdio.h>
 #include "unicode/utypes.h"
+#include "unicode/ucptrie.h"
 #include "utrie2.h"
 
 /**
@@ -28,7 +31,7 @@
  * Writes a C/Java-style comment with the generator name.
  */
 U_CAPI FILE * U_EXPORT2
-usrc_create(const char *path, const char *filename, const char *generator);
+usrc_create(const char *path, const char *filename, int32_t copyrightYear, const char *generator);
 
 /**
  * Creates a source text file and writes a header comment with the ICU copyright.
@@ -73,6 +76,33 @@ usrc_writeUTrie2Struct(FILE *f,
                        const char *indexName, const char *dataName,
                        const char *postfix);
 
+/**
+ * Calls usrc_writeArray() for the index and data arrays of a UCPTrie.
+ */
+U_CAPI void U_EXPORT2
+usrc_writeUCPTrieArrays(FILE *f,
+                        const char *indexPrefix, const char *dataPrefix,
+                        const UCPTrie *pTrie,
+                        const char *postfix);
+
+/**
+ * Writes the UCPTrie struct values.
+ * The {} and declaration etc. need to be included in prefix/postfix or
+ * printed before and after the array contents.
+ */
+U_CAPI void U_EXPORT2
+usrc_writeUCPTrieStruct(FILE *f,
+                        const char *prefix,
+                        const UCPTrie *pTrie,
+                        const char *indexName, const char *dataName,
+                        const char *postfix);
+
+/**
+ * Writes the UCPTrie arrays and struct values.
+ */
+U_CAPI void U_EXPORT2
+usrc_writeUCPTrie(FILE *f, const char *name, const UCPTrie *pTrie);
+
 /**
  * Writes the contents of an array of mostly invariant characters.
  * Characters 0..0x1f are printed as numbers,