summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Herrmann <dh.herrmann@gmail.com>2013-10-23 17:10:59 +0200
committerDavid Herrmann <dh.herrmann@gmail.com>2013-10-23 17:10:59 +0200
commit53a164dcccb2903d02b59b5c6f43d21b72883a70 (patch)
treebb32857f2489668b396a1e9a336659f55526124e
parentff78dc6ba3d1b79a9ac74eb8b5f9a645913e54b1 (diff)
Remove internal symbols from public API
These symbols have been used by kmscon once internally. We copied them over during libtsm extraction. Remove them now so no-one else uses them. They're for internal use only! Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
-rw-r--r--docs/libtsm.sym26
-rw-r--r--src/libtsm.h62
-rw-r--r--src/libtsm_int.h56
-rw-r--r--src/tsm_screen.c3
-rw-r--r--src/tsm_unicode.c13
-rw-r--r--src/tsm_vte_charsets.c4
6 files changed, 65 insertions, 99 deletions
diff --git a/docs/libtsm.sym b/docs/libtsm.sym
index be80ba5..63d2cda 100644
--- a/docs/libtsm.sym
+++ b/docs/libtsm.sym
@@ -25,35 +25,14 @@
LIBTSM_1 {
global:
- tsm_symbol_table_new;
- tsm_symbol_table_ref;
- tsm_symbol_table_unref;
-
- tsm_symbol_default;
- tsm_symbol_make;
- tsm_symbol_append;
- tsm_symbol_get;
- tsm_symbol_get_width;
-
tsm_ucs4_get_width;
tsm_ucs4_to_utf8;
tsm_ucs4_to_utf8_alloc;
- tsm_utf8_mach_new;
- tsm_utf8_mach_free;
-
- tsm_utf8_mach_feed;
- tsm_utf8_mach_get;
- tsm_utf8_mach_reset;
-
tsm_screen_new;
tsm_screen_ref;
tsm_screen_unref;
- tsm_screen_set_opts;
- tsm_screen_reset_opts;
- tsm_screen_get_opts;
-
tsm_screen_get_width;
tsm_screen_get_height;
tsm_screen_resize;
@@ -113,8 +92,6 @@ global:
tsm_screen_draw;
- tsm_vte_unicode_lower;
-
tsm_vte_new;
tsm_vte_ref;
tsm_vte_unref;
@@ -125,9 +102,6 @@ global:
tsm_vte_hard_reset;
tsm_vte_input;
tsm_vte_handle_keyboard;
- tsm_vte_unicode_upper;
- tsm_vte_dec_supplemental_graphics;
- tsm_vte_dec_special_graphics;
local:
*;
};
diff --git a/src/libtsm.h b/src/libtsm.h
index 4fe4bbd..39dda26 100644
--- a/src/libtsm.h
+++ b/src/libtsm.h
@@ -88,8 +88,8 @@ typedef void (*tsm_log_t) (void *data,
/** @} */
/**
- * @defgroup symbols Unicode Symbols
- * Unicode symbol helpers
+ * @defgroup symbols Unicode Helpers
+ * Unicode helpers
*
* Unicode uses 32bit types to uniquely represent symbols. However, combining
* characters allow modifications of such symbols but require additional space.
@@ -98,6 +98,11 @@ typedef void (*tsm_log_t) (void *data,
* This way, only the symbol-identifiers have to be passed around (which are
* simple integers). No string allocation is needed by the API user.
*
+ * The symbol table is currently not exported. Once the API is fixed, we will
+ * provide it to outside users.
+ *
+ * Additionally, this contains some general UTF8/UCS4 helpers.
+ *
* @{
*/
@@ -106,26 +111,6 @@ typedef void (*tsm_log_t) (void *data,
#define TSM_UCS4_MAX (0x7fffffffUL)
#define TSM_UCS4_INVALID (TSM_UCS4_MAX + 1)
#define TSM_UCS4_REPLACEMENT (0xfffdUL)
-#define TSM_UCS4_MAXLEN 10
-
-/* symbols */
-
-struct tsm_symbol_table;
-typedef uint32_t tsm_symbol_t;
-
-extern const tsm_symbol_t tsm_symbol_default;
-
-int tsm_symbol_table_new(struct tsm_symbol_table **out);
-void tsm_symbol_table_ref(struct tsm_symbol_table *tbl);
-void tsm_symbol_table_unref(struct tsm_symbol_table *tbl);
-
-tsm_symbol_t tsm_symbol_make(uint32_t ucs4);
-tsm_symbol_t tsm_symbol_append(struct tsm_symbol_table *tbl,
- tsm_symbol_t sym, uint32_t ucs4);
-const uint32_t *tsm_symbol_get(struct tsm_symbol_table *tbl,
- tsm_symbol_t *sym, size_t *size);
-unsigned int tsm_symbol_get_width(struct tsm_symbol_table *tbl,
- tsm_symbol_t sym);
/* ucs4 to utf8 converter */
@@ -133,25 +118,9 @@ unsigned int tsm_ucs4_get_width(uint32_t ucs4);
size_t tsm_ucs4_to_utf8(uint32_t ucs4, char *out);
char *tsm_ucs4_to_utf8_alloc(const uint32_t *ucs4, size_t len, size_t *len_out);
-/* utf8 state machine */
-
-struct tsm_utf8_mach;
-
-enum tsm_utf8_mach_state {
- TSM_UTF8_START,
- TSM_UTF8_ACCEPT,
- TSM_UTF8_REJECT,
- TSM_UTF8_EXPECT1,
- TSM_UTF8_EXPECT2,
- TSM_UTF8_EXPECT3,
-};
-
-int tsm_utf8_mach_new(struct tsm_utf8_mach **out);
-void tsm_utf8_mach_free(struct tsm_utf8_mach *mach);
+/* symbols */
-int tsm_utf8_mach_feed(struct tsm_utf8_mach *mach, char c);
-uint32_t tsm_utf8_mach_get(struct tsm_utf8_mach *mach);
-void tsm_utf8_mach_reset(struct tsm_utf8_mach *mach);
+typedef uint32_t tsm_symbol_t;
/** @} */
@@ -214,10 +183,6 @@ int tsm_screen_new(struct tsm_screen **out, tsm_log_t log, void *log_data);
void tsm_screen_ref(struct tsm_screen *con);
void tsm_screen_unref(struct tsm_screen *con);
-void tsm_screen_set_opts(struct tsm_screen *scr, unsigned int opts);
-void tsm_screen_reset_opts(struct tsm_screen *scr, unsigned int opts);
-unsigned int tsm_screen_get_opts(struct tsm_screen *scr);
-
unsigned int tsm_screen_get_width(struct tsm_screen *con);
unsigned int tsm_screen_get_height(struct tsm_screen *con);
int tsm_screen_resize(struct tsm_screen *con, unsigned int x,
@@ -311,15 +276,6 @@ tsm_age_t tsm_screen_draw(struct tsm_screen *con, tsm_screen_draw_cb draw_cb,
* @{
*/
-/* available character sets */
-
-typedef tsm_symbol_t tsm_vte_charset[96];
-
-extern tsm_vte_charset tsm_vte_unicode_lower;
-extern tsm_vte_charset tsm_vte_unicode_upper;
-extern tsm_vte_charset tsm_vte_dec_supplemental_graphics;
-extern tsm_vte_charset tsm_vte_dec_special_graphics;
-
/* virtual terminal emulator */
struct tsm_vte;
diff --git a/src/libtsm_int.h b/src/libtsm_int.h
index 77fc0be..4338858 100644
--- a/src/libtsm_int.h
+++ b/src/libtsm_int.h
@@ -30,4 +30,60 @@
#define SHL_EXPORT __attribute__((visibility("default")))
+/* max combined-symbol length */
+#define TSM_UCS4_MAXLEN 10
+
+/* symbols */
+
+struct tsm_symbol_table;
+
+extern const tsm_symbol_t tsm_symbol_default;
+
+int tsm_symbol_table_new(struct tsm_symbol_table **out);
+void tsm_symbol_table_ref(struct tsm_symbol_table *tbl);
+void tsm_symbol_table_unref(struct tsm_symbol_table *tbl);
+
+tsm_symbol_t tsm_symbol_make(uint32_t ucs4);
+tsm_symbol_t tsm_symbol_append(struct tsm_symbol_table *tbl,
+ tsm_symbol_t sym, uint32_t ucs4);
+const uint32_t *tsm_symbol_get(struct tsm_symbol_table *tbl,
+ tsm_symbol_t *sym, size_t *size);
+unsigned int tsm_symbol_get_width(struct tsm_symbol_table *tbl,
+ tsm_symbol_t sym);
+
+/* utf8 state machine */
+
+struct tsm_utf8_mach;
+
+enum tsm_utf8_mach_state {
+ TSM_UTF8_START,
+ TSM_UTF8_ACCEPT,
+ TSM_UTF8_REJECT,
+ TSM_UTF8_EXPECT1,
+ TSM_UTF8_EXPECT2,
+ TSM_UTF8_EXPECT3,
+};
+
+int tsm_utf8_mach_new(struct tsm_utf8_mach **out);
+void tsm_utf8_mach_free(struct tsm_utf8_mach *mach);
+
+int tsm_utf8_mach_feed(struct tsm_utf8_mach *mach, char c);
+uint32_t tsm_utf8_mach_get(struct tsm_utf8_mach *mach);
+void tsm_utf8_mach_reset(struct tsm_utf8_mach *mach);
+
+/* TSM screen */
+
+void tsm_screen_set_opts(struct tsm_screen *scr, unsigned int opts);
+void tsm_screen_reset_opts(struct tsm_screen *scr, unsigned int opts);
+unsigned int tsm_screen_get_opts(struct tsm_screen *scr);
+
+/* available character sets */
+
+typedef tsm_symbol_t tsm_vte_charset[96];
+
+extern tsm_vte_charset tsm_vte_unicode_lower;
+extern tsm_vte_charset tsm_vte_unicode_upper;
+extern tsm_vte_charset tsm_vte_dec_supplemental_graphics;
+extern tsm_vte_charset tsm_vte_dec_special_graphics;
+
#endif /* TSM_LIBTSM_INT_H */
diff --git a/src/tsm_screen.c b/src/tsm_screen.c
index 8a299d2..a67fbde 100644
--- a/src/tsm_screen.c
+++ b/src/tsm_screen.c
@@ -543,7 +543,6 @@ void tsm_screen_unref(struct tsm_screen *con)
free(con);
}
-SHL_EXPORT
void tsm_screen_set_opts(struct tsm_screen *scr, unsigned int opts)
{
if (!scr || !opts)
@@ -552,7 +551,6 @@ void tsm_screen_set_opts(struct tsm_screen *scr, unsigned int opts)
scr->opts |= opts;
}
-SHL_EXPORT
void tsm_screen_reset_opts(struct tsm_screen *scr, unsigned int opts)
{
if (!scr || !opts)
@@ -561,7 +559,6 @@ void tsm_screen_reset_opts(struct tsm_screen *scr, unsigned int opts)
scr->opts &= ~opts;
}
-SHL_EXPORT
unsigned int tsm_screen_get_opts(struct tsm_screen *scr)
{
if (!scr)
diff --git a/src/tsm_unicode.c b/src/tsm_unicode.c
index c594e7f..5c184b8 100644
--- a/src/tsm_unicode.c
+++ b/src/tsm_unicode.c
@@ -97,7 +97,6 @@
* push the new symbol into the symbol table.
*/
-SHL_EXPORT
const tsm_symbol_t tsm_symbol_default = 0;
struct tsm_symbol_table {
@@ -148,7 +147,6 @@ static bool cmp_ucs4(const void *a, const void *b)
}
}
-SHL_EXPORT
int tsm_symbol_table_new(struct tsm_symbol_table **out)
{
struct tsm_symbol_table *tbl;
@@ -187,7 +185,6 @@ err_free:
return ret;
}
-SHL_EXPORT
void tsm_symbol_table_ref(struct tsm_symbol_table *tbl)
{
if (!tbl || !tbl->ref)
@@ -196,7 +193,6 @@ void tsm_symbol_table_ref(struct tsm_symbol_table *tbl)
++tbl->ref;
}
-SHL_EXPORT
void tsm_symbol_table_unref(struct tsm_symbol_table *tbl)
{
if (!tbl || !tbl->ref || --tbl->ref)
@@ -207,7 +203,6 @@ void tsm_symbol_table_unref(struct tsm_symbol_table *tbl)
free(tbl);
}
-SHL_EXPORT
tsm_symbol_t tsm_symbol_make(uint32_t ucs4)
{
if (ucs4 > TSM_UCS4_MAX)
@@ -227,7 +222,6 @@ tsm_symbol_t tsm_symbol_make(uint32_t ucs4)
* This always returns a valid value. If an error happens, the default character
* is returned. If \size is NULL, then the size value is omitted.
*/
-SHL_EXPORT
const uint32_t *tsm_symbol_get(struct tsm_symbol_table *tbl,
tsm_symbol_t *sym, size_t *size)
{
@@ -274,7 +268,6 @@ const uint32_t *tsm_symbol_get(struct tsm_symbol_table *tbl,
return ucs4;
}
-SHL_EXPORT
tsm_symbol_t tsm_symbol_append(struct tsm_symbol_table *tbl,
tsm_symbol_t sym, uint32_t ucs4)
{
@@ -339,7 +332,6 @@ err_id:
return sym;
}
-SHL_EXPORT
unsigned int tsm_symbol_get_width(struct tsm_symbol_table *tbl,
tsm_symbol_t sym)
{
@@ -506,7 +498,6 @@ struct tsm_utf8_mach {
uint32_t ch;
};
-SHL_EXPORT
int tsm_utf8_mach_new(struct tsm_utf8_mach **out)
{
struct tsm_utf8_mach *mach;
@@ -525,7 +516,6 @@ int tsm_utf8_mach_new(struct tsm_utf8_mach **out)
return 0;
}
-SHL_EXPORT
void tsm_utf8_mach_free(struct tsm_utf8_mach *mach)
{
if (!mach)
@@ -534,7 +524,6 @@ void tsm_utf8_mach_free(struct tsm_utf8_mach *mach)
free(mach);
}
-SHL_EXPORT
int tsm_utf8_mach_feed(struct tsm_utf8_mach *mach, char ci)
{
uint32_t c;
@@ -604,7 +593,6 @@ int tsm_utf8_mach_feed(struct tsm_utf8_mach *mach, char ci)
return mach->state;
}
-SHL_EXPORT
uint32_t tsm_utf8_mach_get(struct tsm_utf8_mach *mach)
{
if (!mach || mach->state != TSM_UTF8_ACCEPT)
@@ -613,7 +601,6 @@ uint32_t tsm_utf8_mach_get(struct tsm_utf8_mach *mach)
return mach->ch;
}
-SHL_EXPORT
void tsm_utf8_mach_reset(struct tsm_utf8_mach *mach)
{
if (!mach)
diff --git a/src/tsm_vte_charsets.c b/src/tsm_vte_charsets.c
index 0b8758a..ba4f1db 100644
--- a/src/tsm_vte_charsets.c
+++ b/src/tsm_vte_charsets.c
@@ -74,7 +74,6 @@
* characters 33-126. These are all graphics characters defined in ASCII. The
* first an last entry are never used so we can safely set them to anything.
*/
-SHL_EXPORT
tsm_vte_charset tsm_vte_unicode_lower = {
[0] = 0,
[1] = 33,
@@ -181,7 +180,6 @@ tsm_vte_charset tsm_vte_unicode_lower = {
* for the definitions of each symbol. Again, the first an last entry are never
* used so set them to 0.
*/
-SHL_EXPORT
tsm_vte_charset tsm_vte_unicode_upper = {
[0] = 0,
[1] = 161,
@@ -290,7 +288,6 @@ tsm_vte_charset tsm_vte_unicode_upper = {
* This is very similar to unicode_upper, however, few symbols differ so do not
* mix them up!
*/
-SHL_EXPORT
tsm_vte_charset tsm_vte_dec_supplemental_graphics = {
[0] = 0,
[1] = 161,
@@ -400,7 +397,6 @@ tsm_vte_charset tsm_vte_dec_supplemental_graphics = {
* commonly used for ASCII drawings. It depends on the Unicode Standard 3.2 for
* the extended horizontal scan-line characters 3, 5, 7, and 9.
*/
-SHL_EXPORT
tsm_vte_charset tsm_vte_dec_special_graphics = {
[0] = 0,
[1] = 33,