Mark internal symbols as HB_INTERNAL and define that to static in
authorBehdad Esfahbod <behdad@gnome.org>
Thu, 11 Oct 2007 08:30:50 +0000 (08:30 +0000)
committerBehdad Esfahbod <behdad@src.gnome.org>
Thu, 11 Oct 2007 08:30:50 +0000 (08:30 +0000)
2007-10-11  Behdad Esfahbod  <behdad@gnome.org>

        * pango/opentype/*: Mark internal symbols as HB_INTERNAL and
        define that to static in harfbuzz.c.

        * pango/opentype/harfbuzz-buffer-internal.h: New file.

16 files changed:
src/Makefile.am
src/ftglue.c
src/ftglue.h
src/harfbuzz-buffer-private.h [new file with mode: 0644]
src/harfbuzz-buffer.c
src/harfbuzz-buffer.h
src/harfbuzz-gdef-private.h
src/harfbuzz-gdef.c
src/harfbuzz-gpos-private.h
src/harfbuzz-gpos.c
src/harfbuzz-gsub-private.h
src/harfbuzz-gsub.c
src/harfbuzz-impl.h
src/harfbuzz-open-private.h
src/harfbuzz-open.c
src/harfbuzz.c

index 25b0718..9eb696f 100644 (file)
@@ -28,6 +28,7 @@ PUBLICHEADERS = \
 PRIVATEHEADERS = \
        ftglue.h \
        harfbuzz-impl.h \
+       harfbuzz-buffer-private.h \
        harfbuzz-gdef-private.h \
        harfbuzz-gpos-private.h \
        harfbuzz-gsub-private.h \
index 8dd6bb9..0f68ebf 100644 (file)
@@ -51,7 +51,7 @@ _hb_ftglue_qalloc( FT_ULong   size,
 #define  QALLOC(ptr,size)    ( (ptr) = _hb_ftglue_qalloc( (size), &error ), error != 0 )
 
 
-FT_Pointer
+HB_INTERNAL FT_Pointer
 _hb_ftglue_alloc( FT_ULong   size,
                  HB_Error  *perror )
 {
@@ -72,7 +72,7 @@ _hb_ftglue_alloc( FT_ULong   size,
 }
 
 
-FT_Pointer
+HB_INTERNAL FT_Pointer
 _hb_ftglue_realloc( FT_Pointer  block,
                    FT_ULong    new_size,
                    HB_Error   *perror )
@@ -92,7 +92,7 @@ _hb_ftglue_realloc( FT_Pointer  block,
 }
 
 
-void
+HB_INTERNAL void
 _hb_ftglue_free( FT_Pointer  block )
 {
   if ( block )
@@ -100,7 +100,7 @@ _hb_ftglue_free( FT_Pointer  block )
 }
 
 
-FT_Long
+HB_INTERNAL FT_Long
 _hb_ftglue_stream_pos( FT_Stream   stream )
 {
   LOG(( "ftglue:stream:pos() -> %ld\n", stream->pos ));
@@ -108,7 +108,7 @@ _hb_ftglue_stream_pos( FT_Stream   stream )
 }
 
 
-HB_Error
+HB_INTERNAL HB_Error
 _hb_ftglue_stream_seek( FT_Stream   stream,
                     FT_Long     pos )
 {
@@ -128,7 +128,7 @@ _hb_ftglue_stream_seek( FT_Stream   stream,
 }
 
 
-HB_Error
+HB_INTERNAL HB_Error
 _hb_ftglue_stream_frame_enter( FT_Stream   stream,
                            FT_ULong    count )
 {
@@ -176,7 +176,7 @@ Exit:
 }
 
 
-void
+HB_INTERNAL void
 _hb_ftglue_stream_frame_exit( FT_Stream  stream )
 {
   if ( stream->read )
@@ -190,7 +190,7 @@ _hb_ftglue_stream_frame_exit( FT_Stream  stream )
 }
 
 
-HB_Error
+HB_INTERNAL HB_Error
 _hb_ftglue_face_goto_table( FT_Face    face,
                         FT_ULong   the_tag,
                         FT_Stream  stream )
@@ -280,7 +280,7 @@ Exit:
 /* abuse these private header/source files */
 
 /* helper func to set a breakpoint on */
-HB_Error
+HB_INTERNAL HB_Error
 _hb_err (HB_Error code)
 {
   return code;
index cb71add..a866fee 100644 (file)
@@ -46,6 +46,7 @@
 #include <ft2build.h>
 #include FT_FREETYPE_H
 
+#include "harfbuzz-impl.h"
 #include "harfbuzz-open.h"
 
 FT_BEGIN_HEADER
@@ -83,21 +84,21 @@ FT_BEGIN_HEADER
 #define  GET_ULong()     ((FT_ULong)GET_Long())
 #define  GET_Tag4()      GET_ULong()
 
-FT_Long
+HB_INTERNAL FT_Long
 _hb_ftglue_stream_pos( FT_Stream   stream );
 
-HB_Error
+HB_INTERNAL HB_Error
 _hb_ftglue_stream_seek( FT_Stream   stream,
                     FT_Long     pos );
 
-HB_Error
+HB_INTERNAL HB_Error
 _hb_ftglue_stream_frame_enter( FT_Stream   stream,
                            FT_ULong    size );
 
-void
+HB_INTERNAL void
 _hb_ftglue_stream_frame_exit( FT_Stream  stream );
 
-HB_Error
+HB_INTERNAL HB_Error
 _hb_ftglue_face_goto_table( FT_Face    face,
                         FT_ULong   tag,
                         FT_Stream  stream );
@@ -127,22 +128,23 @@ _hb_ftglue_face_goto_table( FT_Face    face,
 #define  MEM_Copy(dest,source,count)   memcpy( (char*)(dest), (const char*)(source), (size_t)(count) )
 
 
-FT_Pointer
+HB_INTERNAL FT_Pointer
 _hb_ftglue_alloc( FT_ULong   size,
                  HB_Error  *perror_ );
 
-FT_Pointer
+HB_INTERNAL FT_Pointer
 _hb_ftglue_realloc( FT_Pointer  block,
                    FT_ULong    new_size,
                    HB_Error   *perror_ );
 
-void
+HB_INTERNAL void
 _hb_ftglue_free( FT_Pointer  block );
 
 /* abuse these private header/source files */
 
 /* helper func to set a breakpoint on */
-HB_Error _hb_err (HB_Error code);
+HB_INTERNAL HB_Error
+_hb_err (HB_Error code);
 
 FT_END_HEADER
 
diff --git a/src/harfbuzz-buffer-private.h b/src/harfbuzz-buffer-private.h
new file mode 100644 (file)
index 0000000..0b87c18
--- /dev/null
@@ -0,0 +1,60 @@
+/* harfbuzz-buffer-private.h: Buffer of glyphs for substitution/positioning
+ *
+ * Copyright 2004,7 Red Hat Software
+ *
+ * Portions Copyright 1996-2000 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used
+ * modified and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ */
+#ifndef HARFBUZZ_BUFFER_PRIVATE_H
+#define HARFBUZZ_BUFFER_PRIVATE_H
+
+#include "harfbuzz-impl.h"
+#include "harfbuzz-buffer.h"
+
+FT_BEGIN_HEADER
+
+#define HB_GLYPH_PROPERTIES_UNKNOWN 0xFFFF
+
+HB_INTERNAL void
+_hb_buffer_swap( HB_Buffer buffer );
+
+HB_INTERNAL void
+_hb_buffer_clear_output( HB_Buffer buffer );
+
+HB_INTERNAL HB_Error
+_hb_buffer_clear_positions( HB_Buffer buffer );
+
+HB_INTERNAL HB_Error
+_hb_buffer_add_output_glyphs( HB_Buffer  buffer,
+                             FT_UShort  num_in,
+                             FT_UShort  num_out,
+                             FT_UShort *glyph_data,
+                             FT_UShort  component,
+                             FT_UShort  ligID );
+
+HB_INTERNAL HB_Error
+_hb_buffer_add_output_glyph ( HB_Buffer buffer,
+                             FT_UInt   glyph_index,
+                             FT_UShort component,
+                             FT_UShort ligID );
+
+HB_INTERNAL HB_Error
+_hb_buffer_copy_output_glyph ( HB_Buffer buffer );
+
+HB_INTERNAL HB_Error
+_hb_buffer_replace_output_glyph ( HB_Buffer buffer,
+                                 FT_UInt   glyph_index,
+                                 FT_Bool   inplace );
+
+HB_INTERNAL FT_UShort
+_hb_buffer_allocate_ligid( HB_Buffer buffer );
+
+FT_END_HEADER
+
+#endif /* HARFBUZZ_BUFFER_PRIVATE_H */
index 382d6b5..8f9539a 100644 (file)
@@ -7,7 +7,7 @@
  */
 
 #include "harfbuzz-impl.h"
-#include "harfbuzz-buffer.h"
+#include "harfbuzz-buffer-private.h"
 #include "harfbuzz-gsub-private.h"
 #include "harfbuzz-gpos-private.h"
 
@@ -38,6 +38,8 @@
  * to in_string (FALSE) or alt_string (TRUE).
  */
 
+/* Internal API */
+
 static HB_Error
 hb_buffer_ensure( HB_Buffer buffer,
                   FT_ULong   size )
@@ -102,6 +104,8 @@ hb_buffer_duplicate_out_buffer( HB_Buffer buffer )
   return HB_Err_Ok;
 }
 
+/* Public API */
+
 HB_Error
 hb_buffer_new( HB_Buffer *pbuffer )
 {
@@ -145,8 +149,36 @@ hb_buffer_clear( HB_Buffer buffer )
   buffer->max_ligID = 0;
 }
 
-void
-hb_buffer_clear_output( HB_Buffer buffer )
+HB_Error
+hb_buffer_add_glyph( HB_Buffer buffer,
+                     FT_UInt   glyph_index,
+                     FT_UInt   properties,
+                     FT_UInt   cluster )
+{
+  HB_Error error;
+  HB_GlyphItem glyph;
+  
+  error = hb_buffer_ensure( buffer, buffer->in_length + 1 );
+  if ( error )
+    return error;
+
+  glyph = &buffer->in_string[buffer->in_length];
+  glyph->gindex = glyph_index;
+  glyph->properties = properties;
+  glyph->cluster = cluster;
+  glyph->component = 0;
+  glyph->ligID = 0;
+  glyph->gproperties = HB_GLYPH_PROPERTIES_UNKNOWN;
+  
+  buffer->in_length++;
+
+  return HB_Err_Ok;
+}
+
+/* HarfBuzz-Internal API */
+
+HB_INTERNAL void
+_hb_buffer_clear_output( HB_Buffer buffer )
 {
   buffer->out_length = 0;
   buffer->out_pos = 0;
@@ -154,8 +186,8 @@ hb_buffer_clear_output( HB_Buffer buffer )
   buffer->separate_out = FALSE;
 }
 
-HB_Error
-hb_buffer_clear_positions( HB_Buffer buffer )
+HB_INTERNAL HB_Error
+_hb_buffer_clear_positions( HB_Buffer buffer )
 {
   if ( !buffer->positions )
     {
@@ -170,8 +202,8 @@ hb_buffer_clear_positions( HB_Buffer buffer )
   return HB_Err_Ok;
 }
 
-void
-hb_buffer_swap( HB_Buffer buffer )
+HB_INTERNAL void
+_hb_buffer_swap( HB_Buffer buffer )
 {
   HB_GlyphItem tmp_string;
   int tmp_length;
@@ -194,32 +226,6 @@ hb_buffer_swap( HB_Buffer buffer )
   buffer->out_pos = tmp_pos;
 }
 
-HB_Error
-hb_buffer_add_glyph( HB_Buffer buffer,
-                     FT_UInt    glyph_index,
-                     FT_UInt    properties,
-                     FT_UInt    cluster )
-{
-  HB_Error error;
-  HB_GlyphItem glyph;
-  
-  error = hb_buffer_ensure( buffer, buffer->in_length + 1 );
-  if ( error )
-    return error;
-
-  glyph = &buffer->in_string[buffer->in_length];
-  glyph->gindex = glyph_index;
-  glyph->properties = properties;
-  glyph->cluster = cluster;
-  glyph->component = 0;
-  glyph->ligID = 0;
-  glyph->gproperties = HB_GLYPH_PROPERTIES_UNKNOWN;
-  
-  buffer->in_length++;
-
-  return HB_Err_Ok;
-}
-
 /* The following function copies `num_out' elements from `glyph_data'
    to `buffer->out_string', advancing the in array pointer in the structure
    by `num_in' elements, and the out array pointer by `num_out' elements.
@@ -239,8 +245,8 @@ hb_buffer_add_glyph( HB_Buffer buffer,
 
    The cluster value for the glyph at position buffer->in_pos is used
    for all replacement glyphs */
-HB_Error
-hb_buffer_add_output_glyphs( HB_Buffer buffer,
+HB_INTERNAL HB_Error
+_hb_buffer_add_output_glyphs( HB_Buffer  buffer,
                              FT_UShort  num_in,
                              FT_UShort  num_out,
                              FT_UShort *glyph_data,
@@ -290,20 +296,20 @@ hb_buffer_add_output_glyphs( HB_Buffer buffer,
   return HB_Err_Ok;
 }
 
-HB_Error
-hb_buffer_add_output_glyph( HB_Buffer buffer,  
-                            FT_UInt    glyph_index,
-                            FT_UShort  component,
-                            FT_UShort  ligID )
+HB_INTERNAL HB_Error
+_hb_buffer_add_output_glyph( HB_Buffer buffer, 
+                            FT_UInt   glyph_index,
+                            FT_UShort component,
+                            FT_UShort ligID )
 {
   FT_UShort glyph_data =  glyph_index;
 
-  return hb_buffer_add_output_glyphs ( buffer, 1, 1,
+  return _hb_buffer_add_output_glyphs ( buffer, 1, 1,
                                        &glyph_data, component, ligID );
 }
 
-HB_Error
-hb_buffer_copy_output_glyph ( HB_Buffer buffer )
+HB_INTERNAL HB_Error
+_hb_buffer_copy_output_glyph ( HB_Buffer buffer )
 {  
   HB_Error  error;
 
@@ -323,17 +329,17 @@ hb_buffer_copy_output_glyph ( HB_Buffer buffer )
   return HB_Err_Ok;
 }
 
-HB_Error
-hb_buffer_replace_output_glyph( HB_Buffer buffer,      
-                               FT_UInt   glyph_index,
-                               FT_Bool   inplace )
+HB_INTERNAL HB_Error
+_hb_buffer_replace_output_glyph( HB_Buffer buffer,     
+                                FT_UInt   glyph_index,
+                                FT_Bool   inplace )
 {
 
   HB_Error error;
 
   if ( inplace )
     {
-      error = hb_buffer_copy_output_glyph ( buffer );
+      error = _hb_buffer_copy_output_glyph ( buffer );
       if ( error )
        return error;
 
@@ -341,14 +347,14 @@ hb_buffer_replace_output_glyph( HB_Buffer buffer,
     }
   else
     {
-      return hb_buffer_add_output_glyph( buffer, glyph_index, 0xFFFF, 0xFFFF );
+      return _hb_buffer_add_output_glyph( buffer, glyph_index, 0xFFFF, 0xFFFF );
     }
 
   return HB_Err_Ok;
 }
 
-FT_UShort
-hb_buffer_allocate_ligid( HB_Buffer buffer )
+HB_INTERNAL FT_UShort
+_hb_buffer_allocate_ligid( HB_Buffer buffer )
 {
   return ++buffer->max_ligID;
 }
index d35f095..fdc7075 100644 (file)
@@ -1,6 +1,6 @@
 /* harfbuzz-buffer.h: Buffer of glyphs for substitution/positioning
  *
- * Copyrigh 2004 Red Hat Software
+ * Copyright 2004,7 Red Hat Software
  *
  * Portions Copyright 1996-2000 by
  * David Turner, Robert Wilhelm, and Werner Lemberg.
@@ -19,8 +19,6 @@
 
 FT_BEGIN_HEADER
 
-#define HB_GLYPH_PROPERTIES_UNKNOWN 0xFFFF
-
 typedef struct HB_GlyphItemRec_ {
   FT_UInt     gindex;
   FT_UInt     properties;
@@ -67,51 +65,17 @@ HB_Error
 hb_buffer_new( HB_Buffer *buffer );
 
 void
-hb_buffer_swap( HB_Buffer buffer );
-
-void
 hb_buffer_free( HB_Buffer buffer );
 
 void
 hb_buffer_clear( HB_Buffer buffer );
 
-void
-hb_buffer_clear_output( HB_Buffer buffer );
-
-HB_Error
-hb_buffer_clear_positions( HB_Buffer buffer );
-
 HB_Error
 hb_buffer_add_glyph( HB_Buffer buffer,
                      FT_UInt    glyph_index,
                      FT_UInt    properties,
                      FT_UInt    cluster );
 
-HB_Error
-hb_buffer_add_output_glyphs( HB_Buffer buffer,
-                             FT_UShort  num_in,
-                             FT_UShort  num_out,
-                             FT_UShort *glyph_data,
-                             FT_UShort  component,
-                             FT_UShort  ligID );
-
-HB_Error
-hb_buffer_add_output_glyph ( HB_Buffer buffer,
-                             FT_UInt    glyph_index,
-                             FT_UShort  component,
-                             FT_UShort  ligID );
-
-HB_Error
-hb_buffer_copy_output_glyph ( HB_Buffer buffer );
-
-HB_Error
-hb_buffer_replace_output_glyph ( HB_Buffer buffer,
-                                FT_UInt   glyph_index,
-                                FT_Bool   inplace );
-
-FT_UShort
-hb_buffer_allocate_ligid( HB_Buffer buffer );
-
 FT_END_HEADER
 
 #endif /* HARFBUZZ_BUFFER_H */
index e93fd44..0d1b904 100644 (file)
@@ -13,6 +13,7 @@
 #ifndef HARFBUZZ_GDEF_PRIVATE_H
 #define HARFBUZZ_GDEF_PRIVATE_H
 
+#include "harfbuzz-impl.h"
 #include "harfbuzz-gdef.h"
 #include "harfbuzz-buffer.h"
 
@@ -87,14 +88,16 @@ struct  HB_LigGlyph_
 };
 
 
-HB_Error  _HB_GDEF_Add_Glyph_Property( HB_GDEFHeader*   gdef,
-                                      FT_UShort        glyphID,
-                                      FT_UShort        property );
+HB_INTERNAL HB_Error
+_HB_GDEF_Add_Glyph_Property( HB_GDEFHeader* gdef,
+                            FT_UShort      glyphID,
+                            FT_UShort      property );
 
-HB_Error  _HB_GDEF_Check_Property( HB_GDEFHeader*   gdef,
-                                  HB_GlyphItem    item,
-                                  FT_UShort        flags,
-                                  FT_UShort*       property );
+HB_INTERNAL HB_Error
+_HB_GDEF_Check_Property( HB_GDEFHeader* gdef,
+                        HB_GlyphItem   item,
+                        FT_UShort      flags,
+                        FT_UShort*     property );
 
 FT_END_HEADER
 
index 2ba6b1a..1f86e9b 100644 (file)
@@ -762,7 +762,7 @@ HB_Error  HB_GDEF_Get_Glyph_Property( HB_GDEFHeader*  gdef,
                                      FT_UShort        glyphID,
                                      FT_UShort*       property )
 {
-  FT_UShort class, index;
+  FT_UShort class = 0, index = 0; /* shut compiler up */
 
   HB_Error  error;
 
@@ -1057,12 +1057,13 @@ static void  Free_NewGlyphClasses( HB_GDEFHeader*  gdef )
 }
 
 
-HB_Error  _HB_GDEF_Add_Glyph_Property( HB_GDEFHeader*  gdef,
-                             FT_UShort        glyphID,
-                             FT_UShort        property )
+HB_INTERNAL HB_Error
+_HB_GDEF_Add_Glyph_Property( HB_GDEFHeader* gdef,
+                            FT_UShort      glyphID,
+                            FT_UShort      property )
 {
   HB_Error               error;
-  FT_UShort              class, new_class, index;
+  FT_UShort              class, new_class, index = 0; /* shut compiler up */
   FT_UShort              byte, bits, mask;
   FT_UShort              array_index, glyph_index, count;
 
@@ -1142,10 +1143,11 @@ HB_Error  _HB_GDEF_Add_Glyph_Property( HB_GDEFHeader*  gdef,
 }
 
 
-HB_Error  _HB_GDEF_Check_Property( HB_GDEFHeader*  gdef,
-                         HB_GlyphItem    gitem,
-                         FT_UShort        flags,
-                         FT_UShort*       property )
+HB_INTERNAL HB_Error
+_HB_GDEF_Check_Property( HB_GDEFHeader* gdef,
+                        HB_GlyphItem   gitem,
+                        FT_UShort      flags,
+                        FT_UShort*     property )
 {
   HB_Error  error;
 
index ef3c750..ba08ecf 100644 (file)
@@ -13,6 +13,7 @@
 #ifndef HARFBUZZ_GPOS_PRIVATE_H
 #define HARFBUZZ_GPOS_PRIVATE_H
 
+#include "harfbuzz-impl.h"
 #include "harfbuzz-gpos.h"
 
 FT_BEGIN_HEADER
@@ -670,12 +671,14 @@ typedef union HB_GPOS_SubTable_  HB_GPOS_SubTable;
 
 
 
-HB_Error  _HB_GPOS_Load_SubTable( HB_GPOS_SubTable*  st,
-                                 FT_Stream     stream,
-                                 FT_UShort     lookup_type );
+HB_INTERNAL HB_Error
+_HB_GPOS_Load_SubTable( HB_GPOS_SubTable* st,
+                       FT_Stream         stream,
+                       FT_UShort         lookup_type );
 
-void  _HB_GPOS_Free_SubTable( HB_GPOS_SubTable*  st,
-                             FT_UShort     lookup_type );
+HB_INTERNAL void
+_HB_GPOS_Free_SubTable( HB_GPOS_SubTable* st,
+                       FT_UShort         lookup_type );
 
 FT_END_HEADER
 
index 52ed120..859524e 100644 (file)
@@ -1533,7 +1533,7 @@ static HB_Error  Lookup_PairPos2( GPOS_Instance*       gpi,
                                  FT_UShort            format2 )
 {
   HB_Error           error;
-  FT_UShort          cl1, cl2;
+  FT_UShort          cl1 = 0, cl2 = 0; /* shut compiler up */
 
   HB_Class1Record*  c1r;
   HB_Class2Record*  c2r;
@@ -5877,9 +5877,10 @@ static HB_Error  GPOS_Do_Glyph_Lookup( GPOS_Instance*    gpi,
 }
 
 
-HB_Error  _HB_GPOS_Load_SubTable( HB_GPOS_SubTable*  st,
-                                 FT_Stream     stream,
-                                 FT_UShort     lookup_type )
+HB_INTERNAL HB_Error
+_HB_GPOS_Load_SubTable( HB_GPOS_SubTable* st,
+                       FT_Stream         stream,
+                       FT_UShort         lookup_type )
 {
   switch ( lookup_type ) {
     case HB_GPOS_LOOKUP_SINGLE:                return Load_SinglePos           ( st, stream );
@@ -5896,8 +5897,9 @@ HB_Error  _HB_GPOS_Load_SubTable( HB_GPOS_SubTable*  st,
 }
 
 
-void  _HB_GPOS_Free_SubTable( HB_GPOS_SubTable*  st,
-                             FT_UShort     lookup_type )
+HB_INTERNAL void
+_HB_GPOS_Free_SubTable( HB_GPOS_SubTable* st,
+                       FT_UShort         lookup_type )
 {
   switch ( lookup_type ) {
     case HB_GPOS_LOOKUP_SINGLE:                Free_SinglePos          ( st ); return;
@@ -6110,7 +6112,7 @@ HB_Error  HB_GPOS_Apply_String( FT_Face           face,
 
   if ( num_features )
     {
-      error = hb_buffer_clear_positions( buffer );
+      error = _hb_buffer_clear_positions( buffer );
       if ( error )
        return error;
     }
index 5096694..7f339cd 100644 (file)
@@ -13,6 +13,7 @@
 #ifndef HARFBUZZ_GSUB_PRIVATE_H
 #define HARFBUZZ_GSUB_PRIVATE_H
 
+#include "harfbuzz-impl.h"
 #include "harfbuzz-gsub.h"
 
 FT_BEGIN_HEADER
@@ -434,13 +435,14 @@ union  HB_GSUB_SubTable_
 
 
 
+HB_INTERNAL HB_Error
+_HB_GSUB_Load_SubTable( HB_GSUB_SubTable* st,
+                       FT_Stream         stream,
+                       FT_UShort         lookup_type );
 
-HB_Error  _HB_GSUB_Load_SubTable( HB_GSUB_SubTable*  st,
-                                 FT_Stream     stream,
-                                 FT_UShort     lookup_type );
-
-void  _HB_GSUB_Free_SubTable( HB_GSUB_SubTable*  st,
-                             FT_UShort     lookup_type );
+HB_INTERNAL void
+_HB_GSUB_Free_SubTable( HB_GSUB_SubTable* st,
+                       FT_UShort         lookup_type );
 
 FT_END_HEADER
 
index 3f70e0d..7ef3bcb 100644 (file)
@@ -1042,7 +1042,7 @@ static HB_Error  Lookup_LigatureSubst( HB_GSUBHeader*    gsub,
       }
       else
       {
-       FT_UShort ligID = hb_buffer_allocate_ligid( buffer );
+       FT_UShort ligID = _hb_buffer_allocate_ligid( buffer );
        if ( ADD_String( buffer, i, 1, &lig->LigGlyph,
                        0xFFFF, ligID ) )
          return error;
@@ -1050,7 +1050,7 @@ static HB_Error  Lookup_LigatureSubst( HB_GSUBHeader*    gsub,
     }
     else
     {
-      FT_UShort ligID = hb_buffer_allocate_ligid( buffer );
+      FT_UShort ligID = _hb_buffer_allocate_ligid( buffer );
       if ( ADD_Glyph( buffer, lig->LigGlyph, 0xFFFF, ligID ) )
        return error;
 
@@ -4112,9 +4112,10 @@ static HB_Error  GSUB_Do_Glyph_Lookup( HB_GSUBHeader* gsub,
 }
 
 
-HB_Error  _HB_GSUB_Load_SubTable( HB_GSUB_SubTable*  st,
-                                 FT_Stream     stream,
-                                 FT_UShort     lookup_type )
+HB_INTERNAL HB_Error
+_HB_GSUB_Load_SubTable( HB_GSUB_SubTable* st,
+                       FT_Stream         stream,
+                       FT_UShort         lookup_type )
 {
   switch (lookup_type) {
     case HB_GSUB_LOOKUP_SINGLE:                return Load_SingleSubst                 ( st, stream );
@@ -4130,8 +4131,9 @@ HB_Error  _HB_GSUB_Load_SubTable( HB_GSUB_SubTable*  st,
 }
 
 
-void  _HB_GSUB_Free_SubTable( HB_GSUB_SubTable*  st,
-                             FT_UShort     lookup_type )
+HB_INTERNAL void
+_HB_GSUB_Free_SubTable( HB_GSUB_SubTable* st,
+                       FT_UShort         lookup_type )
 {
   switch ( lookup_type ) {
     case HB_GSUB_LOOKUP_SINGLE:                Free_SingleSubst                ( st ); return;
@@ -4173,7 +4175,7 @@ static HB_Error  GSUB_Do_String_Lookup( HB_GSUBHeader* gsub,
     case HB_GSUB_LOOKUP_CHAIN:
       /* in/out forward substitution (implemented lazy) */
 
-      hb_buffer_clear_output ( buffer );
+      _hb_buffer_clear_output ( buffer );
       buffer->in_pos = 0;
       while ( buffer->in_pos < buffer->in_length )
       {
@@ -4201,7 +4203,7 @@ static HB_Error  GSUB_Do_String_Lookup( HB_GSUBHeader* gsub,
        * shouldn't matter in that case though.
        */
       if ( retError == HB_Err_Ok )
-       hb_buffer_swap( buffer );
+       _hb_buffer_swap( buffer );
 
       return retError;
 
index 9547b06..2215d2c 100644 (file)
 
 FT_BEGIN_HEADER
 
+#ifndef HB_INTERNAL
+# define HB_INTERNAL
+#endif
+
 #ifndef NULL
 # define NULL ((void *)0)
 #endif
@@ -68,19 +72,19 @@ FT_BEGIN_HEADER
                                       (property) ) ) != HB_Err_Ok )
 
 #define ADD_String( buffer, num_in, num_out, glyph_data, component, ligID )             \
-          ( ( error = hb_buffer_add_output_glyphs( (buffer),                            \
+          ( ( error = _hb_buffer_add_output_glyphs( (buffer),                            \
                                                    (num_in), (num_out),                \
                                                     (glyph_data), (component), (ligID)  \
                                                   ) ) != HB_Err_Ok )
 #define ADD_Glyph( buffer, glyph_index, component, ligID )                             \
-          ( ( error = hb_buffer_add_output_glyph( (buffer),                             \
+          ( ( error = _hb_buffer_add_output_glyph( (buffer),                             \
                                                     (glyph_index), (component), (ligID) \
                                                   ) ) != HB_Err_Ok )
 #define REPLACE_Glyph( buffer, glyph_index, nesting_level )                            \
-          ( ( error = hb_buffer_replace_output_glyph( (buffer), (glyph_index),         \
+          ( ( error = _hb_buffer_replace_output_glyph( (buffer), (glyph_index),                \
                                                      (nesting_level) == 1 ) ) != HB_Err_Ok )
 #define COPY_Glyph( buffer )                                                           \
-         ( (error = hb_buffer_copy_output_glyph ( buffer ) ) != HB_Err_Ok )
+         ( (error = _hb_buffer_copy_output_glyph ( buffer ) ) != HB_Err_Ok )
 
 FT_END_HEADER
 
index 2e2149a..f3f6cc9 100644 (file)
@@ -13,6 +13,7 @@
 #ifndef HARFBUZZ_OPEN_PRIVATE_H
 #define HARFBUZZ_OPEN_PRIVATE_H
 
+#include "harfbuzz-impl.h"
 #include "harfbuzz-open.h"
 #include "harfbuzz-gsub-private.h"
 #include "harfbuzz-gpos-private.h"
@@ -30,48 +31,58 @@ struct  HB_SubTable_
 };
 
 
-HB_Error  _HB_OPEN_Load_ScriptList( HB_ScriptList*  sl,
+HB_INTERNAL HB_Error
+_HB_OPEN_Load_ScriptList( HB_ScriptList* sl,
                           FT_Stream     stream );
-HB_Error  _HB_OPEN_Load_FeatureList( HB_FeatureList*  fl,
-                           FT_Stream         input );
-HB_Error  _HB_OPEN_Load_LookupList( HB_LookupList*  ll,
-                          FT_Stream        input,
-                          HB_Type         type );
+HB_INTERNAL HB_Error
+_HB_OPEN_Load_FeatureList( HB_FeatureList* fl,
+                          FT_Stream       input );
+HB_INTERNAL HB_Error
+_HB_OPEN_Load_LookupList( HB_LookupList*  ll,
+                         FT_Stream       input,
+                         HB_Type         type );
 
-HB_Error  _HB_OPEN_Load_Coverage( HB_Coverage*  c,
-                        FT_Stream      input );
-HB_Error  _HB_OPEN_Load_ClassDefinition( HB_ClassDefinition*  cd,
-                               FT_UShort             limit,
-                               FT_Stream             input );
-HB_Error _HB_OPEN_Load_EmptyOrClassDefinition( HB_ClassDefinition*  cd,
-                                              FT_UShort            limit,
-                                              FT_ULong             class_offset,
-                                              FT_ULong             base_offset,
-                                              FT_Stream            stream );
-HB_Error  _HB_OPEN_Load_Device( HB_Device*  d,
-                      FT_Stream    input );
+HB_INTERNAL HB_Error
+_HB_OPEN_Load_Coverage( HB_Coverage* c,
+                       FT_Stream    input );
+HB_INTERNAL HB_Error
+_HB_OPEN_Load_ClassDefinition( HB_ClassDefinition* cd,
+                              FT_UShort           limit,
+                              FT_Stream           input );
+HB_INTERNAL HB_Error
+_HB_OPEN_Load_EmptyOrClassDefinition( HB_ClassDefinition* cd,
+                                     FT_UShort           limit,
+                                     FT_ULong            class_offset,
+                                     FT_ULong            base_offset,
+                                     FT_Stream           stream );
+HB_INTERNAL HB_Error
+_HB_OPEN_Load_Device( HB_Device* d,
+                     FT_Stream  input );
 
-void  _HB_OPEN_Free_ScriptList( HB_ScriptList*  sl );
-void  _HB_OPEN_Free_FeatureList( HB_FeatureList*  fl );
-void  _HB_OPEN_Free_LookupList( HB_LookupList*  ll,
-                               HB_Type         type );
+HB_INTERNAL void  _HB_OPEN_Free_ScriptList( HB_ScriptList*  sl );
+HB_INTERNAL void  _HB_OPEN_Free_FeatureList( HB_FeatureList*  fl );
+HB_INTERNAL void  _HB_OPEN_Free_LookupList( HB_LookupList*  ll,
+                                           HB_Type         type );
 
-void  _HB_OPEN_Free_Coverage( HB_Coverage*  c );
-void  _HB_OPEN_Free_ClassDefinition( HB_ClassDefinition*  cd );
-void  _HB_OPEN_Free_Device( HB_Device*  d );
+HB_INTERNAL void  _HB_OPEN_Free_Coverage( HB_Coverage*  c );
+HB_INTERNAL void  _HB_OPEN_Free_ClassDefinition( HB_ClassDefinition*  cd );
+HB_INTERNAL void  _HB_OPEN_Free_Device( HB_Device*  d );
 
 
 
-HB_Error  _HB_OPEN_Coverage_Index( HB_Coverage*  c,
-                         FT_UShort      glyphID,
-                         FT_UShort*     index );
-HB_Error  _HB_OPEN_Get_Class( HB_ClassDefinition*  cd,
-                    FT_UShort             glyphID,
-                    FT_UShort*            class,
-                    FT_UShort*            index );
-HB_Error  _HB_OPEN_Get_Device( HB_Device*  d,
-                     FT_UShort    size,
-                     FT_Short*    value );
+HB_INTERNAL HB_Error
+_HB_OPEN_Coverage_Index( HB_Coverage* c,
+                        FT_UShort    glyphID,
+                        FT_UShort*   index );
+HB_INTERNAL HB_Error
+_HB_OPEN_Get_Class( HB_ClassDefinition* cd,
+                   FT_UShort           glyphID,
+                   FT_UShort*          klass,
+                   FT_UShort*          index );
+HB_INTERNAL HB_Error
+_HB_OPEN_Get_Device( HB_Device* d,
+                    FT_UShort  size,
+                    FT_Short*  value );
 
 FT_END_HEADER
 
index defcd1b..e7881f3 100644 (file)
@@ -184,8 +184,9 @@ static void  Free_Script( HB_Script*  s )
 
 /* ScriptList */
 
-HB_Error  _HB_OPEN_Load_ScriptList( HB_ScriptList*  sl,
-                          FT_Stream        stream )
+HB_INTERNAL HB_Error
+_HB_OPEN_Load_ScriptList( HB_ScriptList* sl,
+                         FT_Stream      stream )
 {
   HB_Error   error;
 
@@ -258,7 +259,8 @@ Fail:
 }
 
 
-void  _HB_OPEN_Free_ScriptList( HB_ScriptList*  sl )
+HB_INTERNAL void
+_HB_OPEN_Free_ScriptList( HB_ScriptList* sl )
 {
   FT_UShort          n, count;
 
@@ -334,8 +336,9 @@ static void  Free_Feature( HB_Feature*  f )
 
 /* FeatureList */
 
-HB_Error  _HB_OPEN_Load_FeatureList( HB_FeatureList*  fl,
-                           FT_Stream         stream )
+HB_INTERNAL HB_Error
+_HB_OPEN_Load_FeatureList( HB_FeatureList* fl,
+                          FT_Stream       stream )
 {
   HB_Error   error;
 
@@ -397,7 +400,8 @@ Fail2:
 }
 
 
-void  _HB_OPEN_Free_FeatureList( HB_FeatureList*  fl )
+HB_INTERNAL void
+_HB_OPEN_Free_FeatureList( HB_FeatureList*  fl )
 {
   FT_UShort           n, count;
 
@@ -557,9 +561,10 @@ static void  Free_Lookup( HB_Lookup*   l,
 
 /* LookupList */
 
-HB_Error  _HB_OPEN_Load_LookupList( HB_LookupList*  ll,
-                          FT_Stream        stream,
-                          HB_Type         type )
+HB_INTERNAL HB_Error
+_HB_OPEN_Load_LookupList( HB_LookupList* ll,
+                         FT_Stream      stream,
+                         HB_Type        type )
 {
   HB_Error   error;
 
@@ -617,8 +622,9 @@ Fail2:
 }
 
 
-void  _HB_OPEN_Free_LookupList( HB_LookupList*  ll,
-                               HB_Type         type )
+HB_INTERNAL void
+_HB_OPEN_Free_LookupList( HB_LookupList* ll,
+                         HB_Type        type )
 {
   FT_UShort    n, count;
 
@@ -754,8 +760,9 @@ static void  Free_Coverage2( HB_CoverageFormat2*  cf2 )
 }
 
 
-HB_Error  _HB_OPEN_Load_Coverage( HB_Coverage*  c,
-                        FT_Stream      stream )
+HB_INTERNAL HB_Error
+_HB_OPEN_Load_Coverage( HB_Coverage* c,
+                       FT_Stream    stream )
 {
   HB_Error   error;
 
@@ -777,7 +784,8 @@ HB_Error  _HB_OPEN_Load_Coverage( HB_Coverage*  c,
 }
 
 
-void  _HB_OPEN_Free_Coverage( HB_Coverage*  c )
+HB_INTERNAL void
+_HB_OPEN_Free_Coverage( HB_Coverage* c )
 {
   switch ( c->CoverageFormat )
   {
@@ -888,9 +896,10 @@ static HB_Error  Coverage_Index2( HB_CoverageFormat2*  cf2,
 }
 
 
-HB_Error  _HB_OPEN_Coverage_Index( HB_Coverage*  c,
-                         FT_UShort      glyphID,
-                         FT_UShort*     index )
+HB_INTERNAL HB_Error
+_HB_OPEN_Coverage_Index( HB_Coverage* c,
+                        FT_UShort    glyphID,
+                        FT_UShort*   index )
 {
   switch ( c->CoverageFormat )
   {
@@ -1059,9 +1068,10 @@ static void  Free_ClassDef2( HB_ClassDefFormat2*  cdf2 )
 
 /* ClassDefinition */
 
-HB_Error  _HB_OPEN_Load_ClassDefinition( HB_ClassDefinition*  cd,
-                               FT_UShort             limit,
-                               FT_Stream             stream )
+HB_INTERNAL HB_Error
+_HB_OPEN_Load_ClassDefinition( HB_ClassDefinition* cd,
+                              FT_UShort           limit,
+                              FT_Stream           stream )
 {
   HB_Error   error;
 
@@ -1095,7 +1105,8 @@ Fail:
 }
 
 
-static HB_Error  _HB_OPEN_Load_EmptyClassDefinition( HB_ClassDefinition*  cd )
+static HB_Error
+_HB_OPEN_Load_EmptyClassDefinition( HB_ClassDefinition*  cd )
 {
   HB_Error   error;
 
@@ -1115,11 +1126,12 @@ Fail:
   return error;
 }
 
-HB_Error _HB_OPEN_Load_EmptyOrClassDefinition( HB_ClassDefinition*  cd,
-                                              FT_UShort            limit,
-                                              FT_ULong             class_offset,
-                                              FT_ULong             base_offset,
-                                              FT_Stream            stream )
+HB_INTERNAL HB_Error
+_HB_OPEN_Load_EmptyOrClassDefinition( HB_ClassDefinition* cd,
+                                     FT_UShort           limit,
+                                     FT_ULong            class_offset,
+                                     FT_ULong            base_offset,
+                                     FT_Stream           stream )
 {
   HB_Error error;
   FT_ULong               cur_offset;
@@ -1140,7 +1152,8 @@ HB_Error _HB_OPEN_Load_EmptyOrClassDefinition( HB_ClassDefinition*  cd,
   return error;
 }
 
-void  _HB_OPEN_Free_ClassDefinition( HB_ClassDefinition*  cd )
+HB_INTERNAL void
+_HB_OPEN_Free_ClassDefinition( HB_ClassDefinition*  cd )
 {
   if ( !cd->loaded )
     return;
@@ -1158,7 +1171,7 @@ void  _HB_OPEN_Free_ClassDefinition( HB_ClassDefinition*  cd )
 
 static HB_Error  Get_Class1( HB_ClassDefFormat1*  cdf1,
                             FT_UShort             glyphID,
-                            FT_UShort*            class,
+                            FT_UShort*            klass,
                             FT_UShort*            index )
 {
   FT_UShort*  cva = cdf1->ClassValueArray;
@@ -1170,12 +1183,12 @@ static HB_Error  Get_Class1( HB_ClassDefFormat1*  cdf1,
   if ( glyphID >= cdf1->StartGlyph &&
        glyphID < cdf1->StartGlyph + cdf1->GlyphCount )
   {
-    *class = cva[glyphID - cdf1->StartGlyph];
+    *klass = cva[glyphID - cdf1->StartGlyph];
     return HB_Err_Ok;
   }
   else
   {
-    *class = 0;
+    *klass = 0;
     return HB_Err_Not_Covered;
   }
 }
@@ -1186,7 +1199,7 @@ static HB_Error  Get_Class1( HB_ClassDefFormat1*  cdf1,
 
 static HB_Error  Get_Class2( HB_ClassDefFormat2*  cdf2,
                             FT_UShort             glyphID,
-                            FT_UShort*            class,
+                            FT_UShort*            klass,
                             FT_UShort*            index )
 {
   HB_Error               error = HB_Err_Ok;
@@ -1199,7 +1212,7 @@ static HB_Error  Get_Class2( HB_ClassDefFormat2*  cdf2,
 
   if ( cdf2->ClassRangeCount == 0 )
     {
-      *class = 0;
+      *klass = 0;
       if ( index )
        *index = 0;
       
@@ -1221,7 +1234,7 @@ static HB_Error  Get_Class2( HB_ClassDefFormat2*  cdf2,
 
     if ( glyphID >= crr[middle].Start && glyphID <= crr[middle].End )
     {
-      *class = crr[middle].Class;
+      *klass = crr[middle].Class;
       error  = HB_Err_Ok;
       break;
     }
@@ -1229,7 +1242,7 @@ static HB_Error  Get_Class2( HB_ClassDefFormat2*  cdf2,
     {
       if ( middle == min )
       {
-       *class = 0;
+       *klass = 0;
        error  = HB_Err_Not_Covered;
        break;
       }
@@ -1239,7 +1252,7 @@ static HB_Error  Get_Class2( HB_ClassDefFormat2*  cdf2,
     {
       if ( middle == max )
       {
-       *class = 0;
+       *klass = 0;
        error  = HB_Err_Not_Covered;
        break;
       }
@@ -1254,15 +1267,16 @@ static HB_Error  Get_Class2( HB_ClassDefFormat2*  cdf2,
 }
 
 
-HB_Error  _HB_OPEN_Get_Class( HB_ClassDefinition*  cd,
-                    FT_UShort             glyphID,
-                    FT_UShort*            class,
-                    FT_UShort*            index )
+HB_INTERNAL HB_Error
+_HB_OPEN_Get_Class( HB_ClassDefinition* cd,
+                   FT_UShort           glyphID,
+                   FT_UShort*          klass,
+                   FT_UShort*          index )
 {
   switch ( cd->ClassFormat )
   {
-  case 1:  return Get_Class1( &cd->cd.cd1, glyphID, class, index );
-  case 2:  return Get_Class2( &cd->cd.cd2, glyphID, class, index );
+  case 1:  return Get_Class1( &cd->cd.cd1, glyphID, klass, index );
+  case 2:  return Get_Class2( &cd->cd.cd2, glyphID, klass, index );
   default: return _hb_err(HB_Err_Invalid_SubTable_Format);
   }
 
@@ -1276,8 +1290,9 @@ HB_Error  _HB_OPEN_Get_Class( HB_ClassDefinition*  cd,
  ***************************/
 
 
-HB_Error  _HB_OPEN_Load_Device( HB_Device*  d,
-                      FT_Stream    stream )
+HB_INTERNAL HB_Error
+_HB_OPEN_Load_Device( HB_Device* d,
+                     FT_Stream  stream )
 {
   HB_Error   error;
 
@@ -1331,7 +1346,8 @@ HB_Error  _HB_OPEN_Load_Device( HB_Device*  d,
 }
 
 
-void  _HB_OPEN_Free_Device( HB_Device*  d )
+HB_INTERNAL void
+_HB_OPEN_Free_Device( HB_Device* d )
 {
   FREE( d->DeltaValue );
 }
@@ -1372,9 +1388,10 @@ void  _HB_OPEN_Free_Device( HB_Device*  d )
 
      mask = 0x00FF                                    */
 
-HB_Error  _HB_OPEN_Get_Device( HB_Device*  d,
-                     FT_UShort    size,
-                     FT_Short*    value )
+HB_INTERNAL HB_Error
+_HB_OPEN_Get_Device( HB_Device* d,
+                    FT_UShort  size,
+                    FT_Short*  value )
 {
   FT_UShort  byte, bits, mask, f, s;
 
index 114069f..78f06a9 100644 (file)
@@ -10,6 +10,7 @@
  *  See the file name COPYING for licensing information.
  *
  ******************************************************************/
+#define HB_INTERNAL static
 #include "ftglue.c"
 #include "harfbuzz-open.c"
 #include "harfbuzz-buffer.c"