summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorYoungbok Shin <youngb.shin@samsung.com>2016-06-15 10:53:20 +0900
committerYoungbok Shin <youngb.shin@samsung.com>2016-06-15 10:55:08 +0900
commit087e8c5d58be057cb77192932cd7fa8f7aacf1a5 (patch)
tree54583ba7d5a7ced507152dde121fd56264bfcb01 /docs
parent4b524cd9449699e546a0991326d12ee2c915fab3 (diff)
downloadharfbuzz-087e8c5d58be057cb77192932cd7fa8f7aacf1a5.tar.gz
harfbuzz-087e8c5d58be057cb77192932cd7fa8f7aacf1a5.tar.bz2
harfbuzz-087e8c5d58be057cb77192932cd7fa8f7aacf1a5.zip
Imported Upstream version 1.2.7
Change-Id: I3f18de6ca717f4dd265ba99ba7f886b327e52b66
Diffstat (limited to 'docs')
-rw-r--r--docs/HarfBuzz.pngbin0 -> 3419 bytes
-rw-r--r--docs/Makefile.am121
-rw-r--r--docs/Makefile.in674
-rw-r--r--docs/harfbuzz-docs.xml184
-rw-r--r--docs/harfbuzz-overrides.txt (renamed from docs/reference/harfbuzz-overrides.txt)0
-rw-r--r--docs/harfbuzz-sections.txt (renamed from docs/reference/harfbuzz-sections.txt)148
-rw-r--r--docs/harfbuzz.types24
-rw-r--r--docs/html/HarfBuzz.pngbin0 -> 3419 bytes
-rw-r--r--docs/html/adding-text-to-the-buffer.html35
-rw-r--r--docs/html/annotation-glossary.html77
-rw-r--r--docs/html/api-index-0-9-10.html41
-rw-r--r--docs/html/api-index-0-9-11.html34
-rw-r--r--docs/html/api-index-0-9-2.html746
-rw-r--r--docs/html/api-index-0-9-20.html38
-rw-r--r--docs/html/api-index-0-9-22.html34
-rw-r--r--docs/html/api-index-0-9-28.html34
-rw-r--r--docs/html/api-index-0-9-30.html41
-rw-r--r--docs/html/api-index-0-9-31.html46
-rw-r--r--docs/html/api-index-0-9-38.html45
-rw-r--r--docs/html/api-index-0-9-39.html34
-rw-r--r--docs/html/api-index-0-9-41.html34
-rw-r--r--docs/html/api-index-0-9-42.html38
-rw-r--r--docs/html/api-index-0-9-5.html56
-rw-r--r--docs/html/api-index-0-9-7.html195
-rw-r--r--docs/html/api-index-0-9-8.html34
-rw-r--r--docs/html/api-index-1-0-5.html42
-rw-r--r--docs/html/api-index-1-1-2.html38
-rw-r--r--docs/html/api-index-1-1-3.html49
-rw-r--r--docs/html/api-index-full.html (renamed from docs/reference/html/api-index-full.html)447
-rw-r--r--docs/html/buffers-language-script-and-direction.html87
-rw-r--r--docs/html/building.html80
-rw-r--r--docs/html/ch07.html (renamed from docs/reference/html/ch01.html)33
-rw-r--r--docs/html/customizing-unicode-functions.html31
-rw-r--r--docs/html/deprecated-api-index.html (renamed from docs/reference/html/deprecated-api-index.html)30
-rw-r--r--docs/html/fonts-and-faces.html40
-rw-r--r--docs/html/harfbuzz-Buffers.html2722
-rw-r--r--docs/html/harfbuzz-Shaping.html347
-rw-r--r--docs/html/harfbuzz-hb-blob.html (renamed from docs/reference/html/harfbuzz-hb-blob.html)125
-rw-r--r--docs/html/harfbuzz-hb-common.html (renamed from docs/reference/html/harfbuzz-hb-common.html)983
-rw-r--r--docs/html/harfbuzz-hb-coretext.html (renamed from docs/reference/html/harfbuzz-hb-coretext.html)29
-rw-r--r--docs/html/harfbuzz-hb-deprecated.html (renamed from docs/reference/html/harfbuzz-hb-deprecated.html)24
-rw-r--r--docs/html/harfbuzz-hb-face.html (renamed from docs/reference/html/harfbuzz-hb-face.html)132
-rw-r--r--docs/html/harfbuzz-hb-font.html (renamed from docs/reference/html/harfbuzz-hb-font.html)739
-rw-r--r--docs/html/harfbuzz-hb-ft.html (renamed from docs/reference/html/harfbuzz-hb-ft.html)110
-rw-r--r--docs/html/harfbuzz-hb-glib.html (renamed from docs/reference/html/harfbuzz-hb-glib.html)48
-rw-r--r--docs/html/harfbuzz-hb-gobject.html651
-rw-r--r--docs/html/harfbuzz-hb-graphite2.html (renamed from docs/reference/html/harfbuzz-hb-graphite2.html)31
-rw-r--r--docs/html/harfbuzz-hb-icu.html (renamed from docs/reference/html/harfbuzz-hb-icu.html)35
-rw-r--r--docs/html/harfbuzz-hb-ot-font.html70
-rw-r--r--docs/html/harfbuzz-hb-ot-layout.html (renamed from docs/reference/html/harfbuzz-hb-ot-layout.html)219
-rw-r--r--docs/html/harfbuzz-hb-ot-shape.html74
-rw-r--r--docs/html/harfbuzz-hb-ot-tag.html (renamed from docs/reference/html/harfbuzz-hb-ot-tag.html)53
-rw-r--r--docs/html/harfbuzz-hb-ot.html (renamed from docs/reference/html/harfbuzz-hb-ot.html)18
-rw-r--r--docs/html/harfbuzz-hb-set.html (renamed from docs/reference/html/harfbuzz-hb-set.html)199
-rw-r--r--docs/html/harfbuzz-hb-shape-plan.html (renamed from docs/reference/html/harfbuzz-hb-shape-plan.html)120
-rw-r--r--docs/html/harfbuzz-hb-unicode.html (renamed from docs/reference/html/harfbuzz-hb-unicode.html)702
-rw-r--r--docs/html/harfbuzz-hb-uniscribe.html (renamed from docs/reference/html/harfbuzz-hb-uniscribe.html)29
-rw-r--r--docs/html/harfbuzz-hb-version.html (renamed from docs/reference/html/harfbuzz-hb-version.html)75
-rw-r--r--docs/html/harfbuzz-hb.html (renamed from docs/reference/html/harfbuzz-hb.html)22
-rw-r--r--docs/html/harfbuzz.devhelp2771
-rw-r--r--docs/html/hello-harfbuzz.html181
-rw-r--r--docs/html/home.png (renamed from docs/reference/html/home.png)bin256 -> 256 bytes
-rw-r--r--docs/html/index.html190
-rw-r--r--docs/html/install-harfbuzz.html59
-rw-r--r--docs/html/left-insensitive.png (renamed from docs/reference/html/left-insensitive.png)bin395 -> 395 bytes
-rw-r--r--docs/html/left.png (renamed from docs/reference/html/left.png)bin262 -> 262 bytes
-rw-r--r--docs/html/object-tree.html (renamed from docs/reference/html/object-tree.html)41
-rw-r--r--docs/html/plans-and-caching.html31
-rw-r--r--docs/html/pt01.html75
-rw-r--r--docs/html/pt02.html138
-rw-r--r--docs/html/right-insensitive.png (renamed from docs/reference/html/right-insensitive.png)bin373 -> 373 bytes
-rw-r--r--docs/html/right.png (renamed from docs/reference/html/right.png)bin261 -> 261 bytes
-rw-r--r--docs/html/setting-buffer-properties.html31
-rw-r--r--docs/html/shaping-and-shape-plans.html39
-rw-r--r--docs/html/style.css (renamed from docs/reference/html/style.css)15
-rw-r--r--docs/html/up-insensitive.png (renamed from docs/reference/html/up-insensitive.png)bin374 -> 374 bytes
-rw-r--r--docs/html/up.png (renamed from docs/reference/html/up.png)bin260 -> 260 bytes
-rw-r--r--docs/html/using-harfbuzzs-native-opentype-implementation.html31
-rw-r--r--docs/html/using-your-own-font-functions.html31
-rw-r--r--docs/html/what-about-the-other-scripts.html31
-rw-r--r--docs/html/what-is-harfbuzz.html124
-rw-r--r--docs/html/why-is-it-called-harfbuzz.html38
-rw-r--r--docs/reference/Makefile.am111
-rw-r--r--docs/reference/Makefile.in852
-rw-r--r--docs/reference/harfbuzz-docs.xml65
-rw-r--r--docs/reference/harfbuzz.types0
-rw-r--r--docs/reference/html/annotation-glossary.html78
-rw-r--r--docs/reference/html/harfbuzz-hb-buffer.html1780
-rw-r--r--docs/reference/html/harfbuzz-hb-gobject.html50
-rw-r--r--docs/reference/html/harfbuzz-hb-shape.html286
-rw-r--r--docs/reference/html/harfbuzz.devhelp2378
-rw-r--r--docs/reference/html/index.html105
-rw-r--r--docs/reference/html/index.sgml496
-rw-r--r--docs/reference/version.xml1
-rw-r--r--docs/usermanual-buffers-language-script-and-direction.xml77
-rw-r--r--docs/usermanual-clusters.xml304
-rw-r--r--docs/usermanual-fonts-and-faces.xml18
-rw-r--r--docs/usermanual-glyph-information.xml8
-rw-r--r--docs/usermanual-hello-harfbuzz.xml183
-rw-r--r--docs/usermanual-install-harfbuzz.xml70
-rw-r--r--docs/usermanual-opentype-features.xml13
-rw-r--r--docs/usermanual-what-is-harfbuzz.xml115
-rw-r--r--docs/version.xml1
-rw-r--r--docs/version.xml.in (renamed from docs/reference/version.xml.in)0
104 files changed, 11522 insertions, 6442 deletions
diff --git a/docs/HarfBuzz.png b/docs/HarfBuzz.png
new file mode 100644
index 0000000..d58d9fc
--- /dev/null
+++ b/docs/HarfBuzz.png
Binary files differ
diff --git a/docs/Makefile.am b/docs/Makefile.am
index 034926c..3916801 100644
--- a/docs/Makefile.am
+++ b/docs/Makefile.am
@@ -1,3 +1,122 @@
-SUBDIRS = reference
+# Process this file with automake to produce Makefile.in
+
+# We require automake 1.6 at least.
+AUTOMAKE_OPTIONS = 1.6
+
+# This is a blank Makefile.am for using gtk-doc.
+# Copy this to your project's API docs directory and modify the variables to
+# suit your project. See the GTK+ Makefiles in gtk+/docs/reference for examples
+# of using the various options.
+
+# The name of the module, e.g. 'glib'.
+DOC_MODULE=harfbuzz
+
+# Uncomment for versioned docs and specify the version of the module, e.g. '2'.
+#DOC_MODULE_VERSION=$(HB_VERSION_MAJOR)
+
+# The top-level SGML file. You can change this if you want to.
+DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.xml
+
+# Directories containing the source code.
+# gtk-doc will search all .c and .h files beneath these paths
+# for inline comments documenting functions and macros.
+# e.g. DOC_SOURCE_DIR=$(top_srcdir)/gtk $(top_srcdir)/gdk
+DOC_SOURCE_DIR=$(top_srcdir)/src $(top_builddir)/src
+
+# Extra options to pass to gtkdoc-scangobj. Not normally needed.
+SCANGOBJ_OPTIONS=
+
+# Extra options to supply to gtkdoc-scan.
+# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED"
+SCAN_OPTIONS=--rebuild-types --deprecated-guards="HB_DISABLE_DEPRECATED" \
+ --ignore-decorators="HB_EXTERN"
+
+# Header files or dirs to ignore when scanning. Use base file/dir names
+# e.g. IGNORE_HFILES=gtkdebug.h gtkintl.h private_code
+IGNORE_HFILES=`cd $(top_srcdir)/src; find . -path './hb-*/*.h' | sed 's@^.*/@@'`
+if HAVE_GOBJECT
+else
+IGNORE_HFILES+=hb-gobject.h hb-gobject-enums.h hb-gobject-structs.h
+endif
+
+# Extra options to supply to gtkdoc-mkdb.
+# e.g. MKDB_OPTIONS=--xml-mode --output-format=xml
+MKDB_OPTIONS=--source-suffixes=h,cc --xml-mode --output-format=xml --ignore-files="$(IGNORE_HFILES)"
+
+# Extra options to supply to gtkdoc-mktmpl
+# e.g. MKTMPL_OPTIONS=--only-section-tmpl
+MKTMPL_OPTIONS=
+
+# Extra options to supply to gtkdoc-mkhtml
+MKHTML_OPTIONS=
+
+# Extra options to supply to gtkdoc-fixref. Not normally needed.
+# e.g. FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html
+FIXXREF_OPTIONS=
+
+# Used for dependencies. The docs will be rebuilt if any of these change.
+# e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h
+# e.g. CFILE_GLOB=$(top_srcdir)/gtk/*.c
+HFILE_GLOB=$(top_srcdir)/src/hb.h $(top_srcdir)/src/hb-*.h
+CFILE_GLOB=$(top_srcdir)/src/hb-*.cc
+
+# Extra header to include when scanning, which are not under DOC_SOURCE_DIR
+# e.g. EXTRA_HFILES=$(top_srcdir}/contrib/extra.h
+EXTRA_HFILES=$(top_builddir)/src/hb-version.h
+
+# Images to copy into HTML directory.
+# e.g. HTML_IMAGES=$(top_srcdir)/gtk/stock-icons/stock_about_24.png
+HTML_IMAGES= \
+ HarfBuzz.png
+
+# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE).
+# e.g. content_files=running.sgml building.sgml changes-2.0.sgml
+content_files= \
+ usermanual-buffers-language-script-and-direction.xml \
+ usermanual-clusters.xml \
+ usermanual-fonts-and-faces.xml \
+ usermanual-glyph-information.xml \
+ usermanual-hello-harfbuzz.xml \
+ usermanual-install-harfbuzz.xml \
+ usermanual-opentype-features.xml \
+ usermanual-what-is-harfbuzz.xml \
+ version.xml
+
+# SGML files where gtk-doc abbrevations (#GtkWidget) are expanded
+# These files must be listed here *and* in content_files
+# e.g. expand_content_files=running.sgml
+expand_content_files=
+
+# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library.
+# Only needed if you are using gtkdoc-scangobj to dynamically query widget
+# signals and properties.
+# e.g. GTKDOC_CFLAGS=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS)
+# e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib)
+GTKDOC_CFLAGS=
+GTKDOC_LIBS=$(top_builddir)/src/libharfbuzz.la
+if HAVE_GOBJECT
+GTKDOC_LIBS+=$(top_builddir)/src/libharfbuzz-gobject.la
+endif
+
+# This includes the standard gtk-doc make rules, copied by gtkdocize.
+include $(top_srcdir)/gtk-doc.make
+
+# Other files to distribute
+# e.g. EXTRA_DIST += version.xml.in
+EXTRA_DIST += version.xml.in
+
+# Files not to distribute
+# for --rebuild-types in $(SCAN_OPTIONS), e.g. $(DOC_MODULE).types
+# for --rebuild-sections in $(SCAN_OPTIONS) e.g. $(DOC_MODULE)-sections.txt
+#DISTCLEANFILES +=
+
+# Comment this out if you want 'make check' to test you doc status
+# and run some sanity checks
+if ENABLE_GTK_DOC
+TESTS_ENVIRONMENT = cd $(srcdir) && \
+ DOC_MODULE=$(DOC_MODULE) DOC_MAIN_SGML_FILE=$(DOC_MAIN_SGML_FILE) \
+ SRCDIR=$(abs_srcdir) BUILDDIR=$(abs_builddir)
+#TESTS = $(GTKDOC_CHECK)
+endif
-include $(top_srcdir)/git.mk
diff --git a/docs/Makefile.in b/docs/Makefile.in
index f8fe860..04b9a15 100644
--- a/docs/Makefile.in
+++ b/docs/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.14 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -13,6 +13,14 @@
# PARTICULAR PURPOSE.
@SET_MAKE@
+
+# Process this file with automake to produce Makefile.in
+
+# -*- mode: makefile -*-
+
+####################################
+# Everything below here is generic #
+####################################
VPATH = @srcdir@
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
@@ -77,8 +85,11 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
+@HAVE_GOBJECT_FALSE@am__append_1 = hb-gobject.h hb-gobject-enums.h hb-gobject-structs.h
+@HAVE_GOBJECT_TRUE@am__append_2 = $(top_builddir)/src/libharfbuzz-gobject.la
+DIST_COMMON = $(top_srcdir)/gtk-doc.make $(srcdir)/Makefile.in \
+ $(srcdir)/Makefile.am $(srcdir)/version.xml.in
subdir = docs
-DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/ax_pthread.m4 \
$(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/libtool.m4 \
@@ -89,7 +100,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_FILES = version.xml
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
@@ -105,73 +116,13 @@ am__v_at_0 = @
am__v_at_1 =
SOURCES =
DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
- ctags-recursive dvi-recursive html-recursive info-recursive \
- install-data-recursive install-dvi-recursive \
- install-exec-recursive install-html-recursive \
- install-info-recursive install-pdf-recursive \
- install-ps-recursive install-recursive installcheck-recursive \
- installdirs-recursive pdf-recursive ps-recursive \
- tags-recursive uninstall-recursive
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
-RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
- distclean-recursive maintainer-clean-recursive
-am__recursive_targets = \
- $(RECURSIVE_TARGETS) \
- $(RECURSIVE_CLEAN_TARGETS) \
- $(am__extra_recursive_targets)
-AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
- distdir
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-# Read a list of newline-separated strings from the standard input,
-# and print each of them once, without duplicates. Input order is
-# *not* preserved.
-am__uniquify_input = $(AWK) '\
- BEGIN { nonempty = 0; } \
- { items[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in items) print i; }; } \
-'
-# Make sure the list of sources is unique. This is necessary because,
-# e.g., the same source file might be shared among _SOURCES variables
-# for different programs/libraries.
-am__define_uniq_tagged_files = \
- list='$(am__tagged_files)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | $(am__uniquify_input)`
-ETAGS = etags
-CTAGS = ctags
-DIST_SUBDIRS = $(SUBDIRS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-am__relativize = \
- dir0=`pwd`; \
- sed_first='s,^\([^/]*\)/.*$$,\1,'; \
- sed_rest='s,^[^/]*/*,,'; \
- sed_last='s,^.*/\([^/]*\)$$,\1,'; \
- sed_butlast='s,/*[^/]*$$,,'; \
- while test -n "$$dir1"; do \
- first=`echo "$$dir1" | sed -e "$$sed_first"`; \
- if test "$$first" != "."; then \
- if test "$$first" = ".."; then \
- dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
- dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
- else \
- first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
- if test "$$first2" = "$$first"; then \
- dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
- else \
- dir2="../$$dir2"; \
- fi; \
- dir0="$$dir0"/"$$first"; \
- fi; \
- fi; \
- dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
- done; \
- reldir="$$dir2"
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
@@ -198,6 +149,8 @@ CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
+DIRECTWRITE_CXXFLAGS = @DIRECTWRITE_CXXFLAGS@
+DIRECTWRITE_LIBS = @DIRECTWRITE_LIBS@
DLLTOOL = @DLLTOOL@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
@@ -207,15 +160,20 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
+FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@
+FONTCONFIG_LIBS = @FONTCONFIG_LIBS@
FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
+FREETYPE_DEPS = @FREETYPE_DEPS@
FREETYPE_LIBS = @FREETYPE_LIBS@
GIT = @GIT@
GLIB_CFLAGS = @GLIB_CFLAGS@
+GLIB_DEPS = @GLIB_DEPS@
GLIB_LIBS = @GLIB_LIBS@
GLIB_MKENUMS = @GLIB_MKENUMS@
GOBJECT_CFLAGS = @GOBJECT_CFLAGS@
GOBJECT_LIBS = @GOBJECT_LIBS@
GRAPHITE2_CFLAGS = @GRAPHITE2_CFLAGS@
+GRAPHITE2_DEPS = @GRAPHITE2_DEPS@
GRAPHITE2_LIBS = @GRAPHITE2_LIBS@
GREP = @GREP@
GTKDOC_CHECK = @GTKDOC_CHECK@
@@ -338,11 +296,195 @@ target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-SUBDIRS = reference
-all: all-recursive
+
+# We require automake 1.6 at least.
+AUTOMAKE_OPTIONS = 1.6
+
+# This is a blank Makefile.am for using gtk-doc.
+# Copy this to your project's API docs directory and modify the variables to
+# suit your project. See the GTK+ Makefiles in gtk+/docs/reference for examples
+# of using the various options.
+
+# The name of the module, e.g. 'glib'.
+DOC_MODULE = harfbuzz
+
+# Uncomment for versioned docs and specify the version of the module, e.g. '2'.
+#DOC_MODULE_VERSION=$(HB_VERSION_MAJOR)
+
+# The top-level SGML file. You can change this if you want to.
+DOC_MAIN_SGML_FILE = $(DOC_MODULE)-docs.xml
+
+# Directories containing the source code.
+# gtk-doc will search all .c and .h files beneath these paths
+# for inline comments documenting functions and macros.
+# e.g. DOC_SOURCE_DIR=$(top_srcdir)/gtk $(top_srcdir)/gdk
+DOC_SOURCE_DIR = $(top_srcdir)/src $(top_builddir)/src
+
+# Extra options to pass to gtkdoc-scangobj. Not normally needed.
+SCANGOBJ_OPTIONS =
+
+# Extra options to supply to gtkdoc-scan.
+# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED"
+SCAN_OPTIONS = --rebuild-types --deprecated-guards="HB_DISABLE_DEPRECATED" \
+ --ignore-decorators="HB_EXTERN"
+
+
+# Header files or dirs to ignore when scanning. Use base file/dir names
+# e.g. IGNORE_HFILES=gtkdebug.h gtkintl.h private_code
+IGNORE_HFILES = `cd $(top_srcdir)/src; find . -path './hb-*/*.h' | sed \
+ 's@^.*/@@'` $(am__append_1)
+
+# Extra options to supply to gtkdoc-mkdb.
+# e.g. MKDB_OPTIONS=--xml-mode --output-format=xml
+MKDB_OPTIONS = --source-suffixes=h,cc --xml-mode --output-format=xml --ignore-files="$(IGNORE_HFILES)"
+
+# Extra options to supply to gtkdoc-mktmpl
+# e.g. MKTMPL_OPTIONS=--only-section-tmpl
+MKTMPL_OPTIONS =
+
+# Extra options to supply to gtkdoc-mkhtml
+MKHTML_OPTIONS =
+
+# Extra options to supply to gtkdoc-fixref. Not normally needed.
+# e.g. FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html
+FIXXREF_OPTIONS =
+
+# Used for dependencies. The docs will be rebuilt if any of these change.
+# e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h
+# e.g. CFILE_GLOB=$(top_srcdir)/gtk/*.c
+HFILE_GLOB = $(top_srcdir)/src/hb.h $(top_srcdir)/src/hb-*.h
+CFILE_GLOB = $(top_srcdir)/src/hb-*.cc
+
+# Extra header to include when scanning, which are not under DOC_SOURCE_DIR
+# e.g. EXTRA_HFILES=$(top_srcdir}/contrib/extra.h
+EXTRA_HFILES = $(top_builddir)/src/hb-version.h
+
+# Images to copy into HTML directory.
+# e.g. HTML_IMAGES=$(top_srcdir)/gtk/stock-icons/stock_about_24.png
+HTML_IMAGES = \
+ HarfBuzz.png
+
+
+# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE).
+# e.g. content_files=running.sgml building.sgml changes-2.0.sgml
+content_files = \
+ usermanual-buffers-language-script-and-direction.xml \
+ usermanual-clusters.xml \
+ usermanual-fonts-and-faces.xml \
+ usermanual-glyph-information.xml \
+ usermanual-hello-harfbuzz.xml \
+ usermanual-install-harfbuzz.xml \
+ usermanual-opentype-features.xml \
+ usermanual-what-is-harfbuzz.xml \
+ version.xml
+
+
+# SGML files where gtk-doc abbrevations (#GtkWidget) are expanded
+# These files must be listed here *and* in content_files
+# e.g. expand_content_files=running.sgml
+expand_content_files =
+
+# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library.
+# Only needed if you are using gtkdoc-scangobj to dynamically query widget
+# signals and properties.
+# e.g. GTKDOC_CFLAGS=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS)
+# e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib)
+GTKDOC_CFLAGS =
+GTKDOC_LIBS = $(top_builddir)/src/libharfbuzz.la $(am__append_2)
+@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_CC = $(CC) $(INCLUDES) $(GTKDOC_DEPS_CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(INCLUDES) $(GTKDOC_DEPS_CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_LD = $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS)
+@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS)
+@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_RUN =
+@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_RUN = $(LIBTOOL) --mode=execute
+
+# We set GPATH here; this gives us semantics for GNU make
+# which are more like other make's VPATH, when it comes to
+# whether a source that is a target of one rule is then
+# searched for in VPATH/GPATH.
+#
+GPATH = $(srcdir)
+TARGET_DIR = $(HTML_DIR)/$(DOC_MODULE)
+SETUP_FILES = \
+ $(content_files) \
+ $(DOC_MAIN_SGML_FILE) \
+ $(DOC_MODULE)-sections.txt \
+ $(DOC_MODULE)-overrides.txt
+
+
+# This includes the standard gtk-doc make rules, copied by gtkdocize.
+
+# Other files to distribute
+# e.g. EXTRA_DIST += version.xml.in
+EXTRA_DIST = $(HTML_IMAGES) $(SETUP_FILES) version.xml.in
+DOC_STAMPS = setup-build.stamp scan-build.stamp sgml-build.stamp \
+ html-build.stamp pdf-build.stamp \
+ sgml.stamp html.stamp pdf.stamp
+
+SCANOBJ_FILES = \
+ $(DOC_MODULE).args \
+ $(DOC_MODULE).hierarchy \
+ $(DOC_MODULE).interfaces \
+ $(DOC_MODULE).prerequisites \
+ $(DOC_MODULE).signals
+
+REPORT_FILES = \
+ $(DOC_MODULE)-undocumented.txt \
+ $(DOC_MODULE)-undeclared.txt \
+ $(DOC_MODULE)-unused.txt
+
+CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) gtkdoc-check.test
+@GTK_DOC_BUILD_HTML_FALSE@HTML_BUILD_STAMP =
+@GTK_DOC_BUILD_HTML_TRUE@HTML_BUILD_STAMP = html-build.stamp
+@GTK_DOC_BUILD_PDF_FALSE@PDF_BUILD_STAMP =
+@GTK_DOC_BUILD_PDF_TRUE@PDF_BUILD_STAMP = pdf-build.stamp
+
+#### setup ####
+GTK_DOC_V_SETUP = $(GTK_DOC_V_SETUP_$(V))
+GTK_DOC_V_SETUP_ = $(GTK_DOC_V_SETUP_$(AM_DEFAULT_VERBOSITY))
+GTK_DOC_V_SETUP_0 = @echo " DOC Preparing build";
+
+#### scan ####
+GTK_DOC_V_SCAN = $(GTK_DOC_V_SCAN_$(V))
+GTK_DOC_V_SCAN_ = $(GTK_DOC_V_SCAN_$(AM_DEFAULT_VERBOSITY))
+GTK_DOC_V_SCAN_0 = @echo " DOC Scanning header files";
+GTK_DOC_V_INTROSPECT = $(GTK_DOC_V_INTROSPECT_$(V))
+GTK_DOC_V_INTROSPECT_ = $(GTK_DOC_V_INTROSPECT_$(AM_DEFAULT_VERBOSITY))
+GTK_DOC_V_INTROSPECT_0 = @echo " DOC Introspecting gobjects";
+
+#### xml ####
+GTK_DOC_V_XML = $(GTK_DOC_V_XML_$(V))
+GTK_DOC_V_XML_ = $(GTK_DOC_V_XML_$(AM_DEFAULT_VERBOSITY))
+GTK_DOC_V_XML_0 = @echo " DOC Building XML";
+
+#### html ####
+GTK_DOC_V_HTML = $(GTK_DOC_V_HTML_$(V))
+GTK_DOC_V_HTML_ = $(GTK_DOC_V_HTML_$(AM_DEFAULT_VERBOSITY))
+GTK_DOC_V_HTML_0 = @echo " DOC Building HTML";
+GTK_DOC_V_XREF = $(GTK_DOC_V_XREF_$(V))
+GTK_DOC_V_XREF_ = $(GTK_DOC_V_XREF_$(AM_DEFAULT_VERBOSITY))
+GTK_DOC_V_XREF_0 = @echo " DOC Fixing cross-references";
+
+#### pdf ####
+GTK_DOC_V_PDF = $(GTK_DOC_V_PDF_$(V))
+GTK_DOC_V_PDF_ = $(GTK_DOC_V_PDF_$(AM_DEFAULT_VERBOSITY))
+GTK_DOC_V_PDF_0 = @echo " DOC Building PDF";
+
+# Files not to distribute
+# for --rebuild-types in $(SCAN_OPTIONS), e.g. $(DOC_MODULE).types
+# for --rebuild-sections in $(SCAN_OPTIONS) e.g. $(DOC_MODULE)-sections.txt
+#DISTCLEANFILES +=
+
+# Comment this out if you want 'make check' to test you doc status
+# and run some sanity checks
+@ENABLE_GTK_DOC_TRUE@TESTS_ENVIRONMENT = cd $(srcdir) && \
+@ENABLE_GTK_DOC_TRUE@ DOC_MODULE=$(DOC_MODULE) DOC_MAIN_SGML_FILE=$(DOC_MAIN_SGML_FILE) \
+@ENABLE_GTK_DOC_TRUE@ SRCDIR=$(abs_srcdir) BUILDDIR=$(abs_builddir)
+
+all: all-am
.SUFFIXES:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/gtk-doc.make $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
@@ -363,6 +505,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
+$(top_srcdir)/gtk-doc.make:
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -372,111 +515,20 @@ $(top_srcdir)/configure: $(am__configure_deps)
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
+version.xml: $(top_builddir)/config.status $(srcdir)/version.xml.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
mostlyclean-libtool:
-rm -f *.lo
clean-libtool:
-rm -rf .libs _libs
+tags TAGS:
-# This directory's subdirectories are mostly independent; you can cd
-# into them and run 'make' without going through this Makefile.
-# To change the values of 'make' variables: instead of editing Makefiles,
-# (1) if the variable is set in 'config.status', edit 'config.status'
-# (which will cause the Makefiles to be regenerated when you run 'make');
-# (2) otherwise, pass the desired values on the 'make' command line.
-$(am__recursive_targets):
- @fail=; \
- if $(am__make_keepgoing); then \
- failcom='fail=yes'; \
- else \
- failcom='exit 1'; \
- fi; \
- dot_seen=no; \
- target=`echo $@ | sed s/-recursive//`; \
- case "$@" in \
- distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
- *) list='$(SUBDIRS)' ;; \
- esac; \
- for subdir in $$list; do \
- echo "Making $$target in $$subdir"; \
- if test "$$subdir" = "."; then \
- dot_seen=yes; \
- local_target="$$target-am"; \
- else \
- local_target="$$target"; \
- fi; \
- ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
- done; \
- if test "$$dot_seen" = "no"; then \
- $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
- fi; test -z "$$fail"
-
-ID: $(am__tagged_files)
- $(am__define_uniq_tagged_files); mkid -fID $$unique
-tags: tags-recursive
-TAGS: tags
-
-tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
- set x; \
- here=`pwd`; \
- if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
- include_option=--etags-include; \
- empty_fix=.; \
- else \
- include_option=--include; \
- empty_fix=; \
- fi; \
- list='$(SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- test ! -f $$subdir/TAGS || \
- set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
- fi; \
- done; \
- $(am__define_uniq_tagged_files); \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: ctags-recursive
-
-CTAGS: ctags
-ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
- $(am__define_uniq_tagged_files); \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-cscopelist: cscopelist-recursive
-
-cscopelist-am: $(am__tagged_files)
- list='$(am__tagged_files)'; \
- case "$(srcdir)" in \
- [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
- *) sdir=$(subdir)/$(srcdir) ;; \
- esac; \
- for i in $$list; do \
- if test -f "$$i"; then \
- echo "$(subdir)/$$i"; \
- else \
- echo "$$sdir/$$i"; \
- fi; \
- done >> $(top_builddir)/cscope.files
+ctags CTAGS:
+
+cscope cscopelist:
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
@@ -508,45 +560,23 @@ distdir: $(DISTFILES)
|| exit 1; \
fi; \
done
- @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- $(am__make_dryrun) \
- || test -d "$(distdir)/$$subdir" \
- || $(MKDIR_P) "$(distdir)/$$subdir" \
- || exit 1; \
- dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
- $(am__relativize); \
- new_distdir=$$reldir; \
- dir1=$$subdir; dir2="$(top_distdir)"; \
- $(am__relativize); \
- new_top_distdir=$$reldir; \
- echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
- echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
- ($(am__cd) $$subdir && \
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$$new_top_distdir" \
- distdir="$$new_distdir" \
- am__remove_distdir=: \
- am__skip_length_check=: \
- am__skip_mode_fix=: \
- distdir) \
- || exit 1; \
- fi; \
- done
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$(top_distdir)" distdir="$(distdir)" \
+ dist-hook
check-am: all-am
-check: check-recursive
-all-am: Makefile
-installdirs: installdirs-recursive
-installdirs-am:
-install: install-recursive
-install-exec: install-exec-recursive
-install-data: install-data-recursive
-uninstall: uninstall-recursive
+check: check-am
+@ENABLE_GTK_DOC_FALSE@all-local:
+all-am: Makefile all-local
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-installcheck: installcheck-recursive
+installcheck: installcheck-am
install-strip:
if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
@@ -560,6 +590,7 @@ install-strip:
mostlyclean-generic:
clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
@@ -568,87 +599,272 @@ distclean-generic:
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
-clean: clean-recursive
+clean: clean-am
-clean-am: clean-generic clean-libtool mostlyclean-am
+clean-am: clean-generic clean-libtool clean-local mostlyclean-am
-distclean: distclean-recursive
+distclean: distclean-am
-rm -f Makefile
-distclean-am: clean-am distclean-generic distclean-tags
+distclean-am: clean-am distclean-generic distclean-local
-dvi: dvi-recursive
+dvi: dvi-am
dvi-am:
-html: html-recursive
+html: html-am
html-am:
-info: info-recursive
+info: info-am
info-am:
-install-data-am:
+install-data-am: install-data-local
-install-dvi: install-dvi-recursive
+install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
-install-html: install-html-recursive
+install-html: install-html-am
install-html-am:
-install-info: install-info-recursive
+install-info: install-info-am
install-info-am:
install-man:
-install-pdf: install-pdf-recursive
+install-pdf: install-pdf-am
install-pdf-am:
-install-ps: install-ps-recursive
+install-ps: install-ps-am
install-ps-am:
installcheck-am:
-maintainer-clean: maintainer-clean-recursive
+maintainer-clean: maintainer-clean-am
-rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
+maintainer-clean-am: distclean-am maintainer-clean-generic \
+ maintainer-clean-local
-mostlyclean: mostlyclean-recursive
+mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic mostlyclean-libtool
-pdf: pdf-recursive
+pdf: pdf-am
pdf-am:
-ps: ps-recursive
+ps: ps-am
ps-am:
-uninstall-am:
+uninstall-am: uninstall-local
+
+.MAKE: install-am install-strip
+
+.PHONY: all all-am all-local check check-am clean clean-generic \
+ clean-libtool clean-local cscopelist-am ctags-am dist-hook \
+ distclean distclean-generic distclean-libtool distclean-local \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-data-local \
+ install-dvi install-dvi-am install-exec install-exec-am \
+ install-html install-html-am install-info install-info-am \
+ install-man install-pdf install-pdf-am install-ps \
+ install-ps-am install-strip installcheck installcheck-am \
+ installdirs maintainer-clean maintainer-clean-generic \
+ maintainer-clean-local mostlyclean mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \
+ uninstall-am uninstall-local
+
+
+gtkdoc-check.test: Makefile
+ $(AM_V_GEN)echo "#!/bin/sh -e" > $@; \
+ echo "$(GTKDOC_CHECK_PATH) || exit 1" >> $@; \
+ chmod +x $@
+
+all-gtk-doc: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP)
+.PHONY: all-gtk-doc
+
+@ENABLE_GTK_DOC_TRUE@all-local: all-gtk-doc
+
+docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP)
+
+$(REPORT_FILES): sgml-build.stamp
+
+setup-build.stamp:
+ -$(GTK_DOC_V_SETUP)if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
+ files=`echo $(SETUP_FILES) $(expand_content_files) $(DOC_MODULE).types`; \
+ if test "x$$files" != "x" ; then \
+ for file in $$files ; do \
+ destdir=`dirname $(abs_builddir)/$$file`; \
+ test -d "$$destdir" || mkdir -p "$$destdir"; \
+ test -f $(abs_srcdir)/$$file && \
+ cp -pf $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \
+ done; \
+ fi; \
+ fi
+ $(AM_V_at)touch setup-build.stamp
+
+scan-build.stamp: setup-build.stamp $(HFILE_GLOB) $(CFILE_GLOB)
+ $(GTK_DOC_V_SCAN)_source_dir='' ; \
+ for i in $(DOC_SOURCE_DIR) ; do \
+ _source_dir="$${_source_dir} --source-dir=$$i" ; \
+ done ; \
+ gtkdoc-scan --module=$(DOC_MODULE) --ignore-headers="$(IGNORE_HFILES)" $${_source_dir} $(SCAN_OPTIONS) $(EXTRA_HFILES)
+ $(GTK_DOC_V_INTROSPECT)if grep -l '^..*$$' $(DOC_MODULE).types > /dev/null 2>&1 ; then \
+ scanobj_options=""; \
+ gtkdoc-scangobj 2>&1 --help | grep >/dev/null "\-\-verbose"; \
+ if test "$(?)" = "0"; then \
+ if test "x$(V)" = "x1"; then \
+ scanobj_options="--verbose"; \
+ fi; \
+ fi; \
+ CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" \
+ gtkdoc-scangobj $(SCANGOBJ_OPTIONS) $$scanobj_options --module=$(DOC_MODULE); \
+ else \
+ for i in $(SCANOBJ_FILES) ; do \
+ test -f $$i || touch $$i ; \
+ done \
+ fi
+ $(AM_V_at)touch scan-build.stamp
+
+$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp
+ @true
+
+sgml-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt $(expand_content_files)
+ $(GTK_DOC_V_XML)_source_dir='' ; \
+ for i in $(DOC_SOURCE_DIR) ; do \
+ _source_dir="$${_source_dir} --source-dir=$$i" ; \
+ done ; \
+ gtkdoc-mkdb --module=$(DOC_MODULE) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $${_source_dir} $(MKDB_OPTIONS)
+ $(AM_V_at)touch sgml-build.stamp
+
+sgml.stamp: sgml-build.stamp
+ @true
+
+html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
+ $(GTK_DOC_V_HTML)rm -rf html && mkdir html && \
+ mkhtml_options=""; \
+ gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-verbose"; \
+ if test "$(?)" = "0"; then \
+ if test "x$(V)" = "x1"; then \
+ mkhtml_options="$$mkhtml_options --verbose"; \
+ fi; \
+ fi; \
+ gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-path"; \
+ if test "$(?)" = "0"; then \
+ mkhtml_options="$$mkhtml_options --path=\"$(abs_srcdir)\""; \
+ fi; \
+ cd html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
+ -@test "x$(HTML_IMAGES)" = "x" || \
+ for file in $(HTML_IMAGES) ; do \
+ if test -f $(abs_srcdir)/$$file ; then \
+ cp $(abs_srcdir)/$$file $(abs_builddir)/html; \
+ fi; \
+ if test -f $(abs_builddir)/$$file ; then \
+ cp $(abs_builddir)/$$file $(abs_builddir)/html; \
+ fi; \
+ done;
+ $(GTK_DOC_V_XREF)gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
+ $(AM_V_at)touch html-build.stamp
+
+pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
+ $(GTK_DOC_V_PDF)rm -f $(DOC_MODULE).pdf && \
+ mkpdf_options=""; \
+ gtkdoc-mkpdf 2>&1 --help | grep >/dev/null "\-\-verbose"; \
+ if test "$(?)" = "0"; then \
+ if test "x$(V)" = "x1"; then \
+ mkpdf_options="$$mkpdf_options --verbose"; \
+ fi; \
+ fi; \
+ if test "x$(HTML_IMAGES)" != "x"; then \
+ for img in $(HTML_IMAGES); do \
+ part=`dirname $$img`; \
+ echo $$mkpdf_options | grep >/dev/null "\-\-imgdir=$$part "; \
+ if test $$? != 0; then \
+ mkpdf_options="$$mkpdf_options --imgdir=$$part"; \
+ fi; \
+ done; \
+ fi; \
+ gtkdoc-mkpdf --path="$(abs_srcdir)" $$mkpdf_options $(DOC_MODULE) $(DOC_MAIN_SGML_FILE) $(MKPDF_OPTIONS)
+ $(AM_V_at)touch pdf-build.stamp
+
+##############
+
+clean-local:
+ @rm -f *~ *.bak
+ @rm -rf .libs
+ @if echo $(SCAN_OPTIONS) | grep -q "\-\-rebuild-types" ; then \
+ rm -f $(DOC_MODULE).types; \
+ fi
+
+distclean-local:
+ @rm -rf xml html $(REPORT_FILES) $(DOC_MODULE).pdf \
+ $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
+ @if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
+ rm -f $(SETUP_FILES) $(expand_content_files) $(DOC_MODULE).types; \
+ fi
-.MAKE: $(am__recursive_targets) install-am install-strip
+maintainer-clean-local:
+ @rm -rf xml html
-.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
- check-am clean clean-generic clean-libtool cscopelist-am ctags \
- ctags-am distclean distclean-generic distclean-libtool \
- distclean-tags distdir dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- installdirs-am maintainer-clean maintainer-clean-generic \
- mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
- ps ps-am tags tags-am uninstall uninstall-am
+install-data-local:
+ @installfiles=`echo $(builddir)/html/*`; \
+ if test "$$installfiles" = '$(builddir)/html/*'; \
+ then echo 1>&2 'Nothing to install' ; \
+ else \
+ if test -n "$(DOC_MODULE_VERSION)"; then \
+ installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
+ else \
+ installdir="$(DESTDIR)$(TARGET_DIR)"; \
+ fi; \
+ $(mkinstalldirs) $${installdir} ; \
+ for i in $$installfiles; do \
+ echo ' $(INSTALL_DATA) '$$i ; \
+ $(INSTALL_DATA) $$i $${installdir}; \
+ done; \
+ if test -n "$(DOC_MODULE_VERSION)"; then \
+ mv -f $${installdir}/$(DOC_MODULE).devhelp2 \
+ $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \
+ fi; \
+ $(GTKDOC_REBASE) --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir}; \
+ fi
+uninstall-local:
+ @if test -n "$(DOC_MODULE_VERSION)"; then \
+ installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
+ else \
+ installdir="$(DESTDIR)$(TARGET_DIR)"; \
+ fi; \
+ rm -rf $${installdir}
+
+#
+# Require gtk-doc when making dist
+#
+@HAVE_GTK_DOC_TRUE@dist-check-gtkdoc: docs
+@HAVE_GTK_DOC_FALSE@dist-check-gtkdoc:
+@HAVE_GTK_DOC_FALSE@ @echo "*** gtk-doc is needed to run 'make dist'. ***"
+@HAVE_GTK_DOC_FALSE@ @echo "*** gtk-doc was not found when 'configure' ran. ***"
+@HAVE_GTK_DOC_FALSE@ @echo "*** please install gtk-doc and rerun 'configure'. ***"
+@HAVE_GTK_DOC_FALSE@ @false
+
+dist-hook: dist-check-gtkdoc all-gtk-doc dist-hook-local
+ @mkdir $(distdir)/html
+ @cp ./html/* $(distdir)/html
+ @-cp ./$(DOC_MODULE).pdf $(distdir)/
+ @-cp ./$(DOC_MODULE).types $(distdir)/
+ @-cp ./$(DOC_MODULE)-sections.txt $(distdir)/
+ @cd $(distdir) && rm -f $(DISTCLEANFILES)
+ @$(GTKDOC_REBASE) --online --relative --html-dir=$(distdir)/html
+
+.PHONY : dist-hook-local docs
+#TESTS = $(GTKDOC_CHECK)
-include $(top_srcdir)/git.mk
diff --git a/docs/harfbuzz-docs.xml b/docs/harfbuzz-docs.xml
new file mode 100644
index 0000000..6c03f39
--- /dev/null
+++ b/docs/harfbuzz-docs.xml
@@ -0,0 +1,184 @@
+<?xml version="1.0"?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
+ "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+ <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'">
+ <!ENTITY version SYSTEM "version.xml">
+]>
+<book id="index">
+ <bookinfo>
+ <title>HarfBuzz Manual</title>
+ <abstract>
+ <title>HarfBuzz</title>
+ <graphic fileref="HarfBuzz.png" format="PNG" align="center"/>
+ <para>
+ HarfBuzz is an <ulink url="http://www.microsoft.com/typography/otspec/">OpenType</ulink>
+ text shaping engine.
+ </para>
+ <para>
+ The current HarfBuzz codebase, formerly known as harfbuzz-ng, is
+ versioned 1.x.x and is stable and under active maintenance. This is
+ what is used in latest versions of Firefox, GNOME, ChromeOS, Chrome,
+ LibreOffice, XeTeX, Android, and KDE, among other places. The canonical
+ source tree is available
+ <ulink url="http://cgit.freedesktop.org/harfbuzz/">here</ulink>.
+ Also available on
+ <ulink url="https://github.com/behdad/harfbuzz">github</ulink>.
+ See <xref linkend="download" endterm="download.title"/> for release tarballs.
+ </para>
+ <para>
+ The old HarfBuzz codebase, these days known as harfbuzz-old, was
+ derived from <ulink url="http://freetype.org/">FreeType</ulink>,
+ <ulink url="http://pango.org/">Pango</ulink>, and
+ <ulink url="http://qt-project.org/">Qt</ulink> and is available
+ <ulink url="http://cgit.freedesktop.org/harfbuzz.old/">here</ulink>.
+ It is not actively developed or maintained, and is extremely buggy. All
+ users are encouraged to switch over to the new HarfBuzz as soon as
+ possible. There are no release tarballs of old HarfBuzz whatsoever.
+ </para>
+ </abstract>
+ </bookinfo>
+
+ <part>
+ <title>User's manual</title>
+ <xi:include href="usermanual-what-is-harfbuzz.xml"/>
+ <xi:include href="usermanual-install-harfbuzz.xml"/>
+ <xi:include href="usermanual-hello-harfbuzz.xml"/>
+ <xi:include href="usermanual-buffers-language-script-and-direction.xml"/>
+ <xi:include href="usermanual-fonts-and-faces.xml"/>
+ <xi:include href="usermanual-opentype-features.xml"/>
+ <xi:include href="usermanual-glyph-information.xml"/>
+ </part>
+
+ <part>
+ <partinfo>
+ <releaseinfo>
+ This document is for HarfBuzz &version;.
+ <!--The latest version of this documentation can be found on-line at
+ <ulink role="online-location" url="http://[SERVER]/libharfbuzz/index.html">http://[SERVER]/libharfbuzz/</ulink>.-->
+ </releaseinfo>
+ </partinfo>
+ <title>Reference manual</title>
+ <chapter>
+ <title>Harfbuzz API</title>
+ <xi:include href="xml/hb.xml"/>
+ <xi:include href="xml/hb-common.xml"/>
+ <xi:include href="xml/hb-unicode.xml"/>
+ <xi:include href="xml/hb-buffer.xml"/>
+ <xi:include href="xml/hb-blob.xml"/>
+ <xi:include href="xml/hb-face.xml"/>
+ <xi:include href="xml/hb-font.xml"/>
+ <xi:include href="xml/hb-shape.xml"/>
+
+ <xi:include href="xml/hb-version.xml"/>
+ <xi:include href="xml/hb-deprecated.xml"/>
+
+ <xi:include href="xml/hb-set.xml"/>
+
+ <xi:include href="xml/hb-ot.xml"/>
+ <xi:include href="xml/hb-ot-layout.xml"/>
+ <xi:include href="xml/hb-ot-tag.xml"/>
+ <xi:include href="xml/hb-ot-font.xml"/>
+ <xi:include href="xml/hb-ot-shape.xml"/>
+
+ <xi:include href="xml/hb-shape-plan.xml"/>
+
+ <xi:include href="xml/hb-glib.xml"/>
+ <xi:include href="xml/hb-icu.xml"/>
+
+ <xi:include href="xml/hb-ft.xml"/>
+
+ <xi:include href="xml/hb-graphite2.xml"/>
+ <xi:include href="xml/hb-uniscribe.xml"/>
+ <xi:include href="xml/hb-coretext.xml"/>
+
+ <xi:include href="xml/hb-gobject.xml"/>
+
+ </chapter>
+ <chapter id="object-tree">
+ <title>Object Hierarchy</title>
+ <xi:include href="xml/tree_index.sgml"/>
+ </chapter>
+ <index id="api-index-full">
+ <title>API Index</title>
+ <xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-0-9-2" role="0.9.2">
+ <title>Index of new symbols in 0.9.2</title>
+ <xi:include href="xml/api-index-0.9.2.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-0-9-5" role="0.9.5">
+ <title>Index of new symbols in 0.9.5</title>
+ <xi:include href="xml/api-index-0.9.5.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-0-9-7" role="0.9.7">
+ <title>Index of new symbols in 0.9.7</title>
+ <xi:include href="xml/api-index-0.9.7.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-0-9-8" role="0.9.8">
+ <title>Index of new symbols in 0.9.8</title>
+ <xi:include href="xml/api-index-0.9.8.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-0-9-10" role="0.9.10">
+ <title>Index of new symbols in 0.9.10</title>
+ <xi:include href="xml/api-index-0.9.10.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-0-9-11" role="0.9.11">
+ <title>Index of new symbols in 0.9.11</title>
+ <xi:include href="xml/api-index-0.9.11.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-0-9-20" role="0.9.20">
+ <title>Index of new symbols in 0.9.20</title>
+ <xi:include href="xml/api-index-0.9.20.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-0-9-22" role="0.9.22">
+ <title>Index of new symbols in 0.9.22</title>
+ <xi:include href="xml/api-index-0.9.22.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-0-9-28" role="0.9.28">
+ <title>Index of new symbols in 0.9.28</title>
+ <xi:include href="xml/api-index-0.9.28.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-0-9-30" role="0.9.30">
+ <title>Index of new symbols in 0.9.30</title>
+ <xi:include href="xml/api-index-0.9.30.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-0-9-31" role="0.9.31">
+ <title>Index of new symbols in 0.9.31</title>
+ <xi:include href="xml/api-index-0.9.31.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-0-9-38" role="0.9.38">
+ <title>Index of new symbols in 0.9.38</title>
+ <xi:include href="xml/api-index-0.9.38.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-0-9-39" role="0.9.39">
+ <title>Index of new symbols in 0.9.39</title>
+ <xi:include href="xml/api-index-0.9.39.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-0-9-41" role="0.9.41">
+ <title>Index of new symbols in 0.9.41</title>
+ <xi:include href="xml/api-index-0.9.41.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-0-9-42" role="0.9.42">
+ <title>Index of new symbols in 0.9.42</title>
+ <xi:include href="xml/api-index-0.9.42.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-1-0-5" role="1.0.5">
+ <title>Index of new symbols in 1.0.5</title>
+ <xi:include href="xml/api-index-1.0.5.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-1-1-2" role="1.1.2">
+ <title>Index of new symbols in 1.1.2</title>
+ <xi:include href="xml/api-index-1.1.2.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-1-1-3" role="1.1.3">
+ <title>Index of new symbols in 1.1.3</title>
+ <xi:include href="xml/api-index-1.1.3.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="deprecated-api-index" role="deprecated">
+ <title>Index of deprecated API</title>
+ <xi:include href="xml/api-index-deprecated.xml"><xi:fallback /></xi:include>
+ </index>
+
+ <xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
+ </part>
+</book>
diff --git a/docs/reference/harfbuzz-overrides.txt b/docs/harfbuzz-overrides.txt
index e69de29..e69de29 100644
--- a/docs/reference/harfbuzz-overrides.txt
+++ b/docs/harfbuzz-overrides.txt
diff --git a/docs/reference/harfbuzz-sections.txt b/docs/harfbuzz-sections.txt
index b112047..e0dc23d 100644
--- a/docs/reference/harfbuzz-sections.txt
+++ b/docs/harfbuzz-sections.txt
@@ -2,6 +2,7 @@
<FILE>hb</FILE>
<SUBSECTION Private>
HB_H_IN
+HB_EXTERN
</SECTION>
<SECTION>
@@ -25,97 +26,106 @@ hb_memory_mode_t
<SECTION>
<FILE>hb-buffer</FILE>
HB_SEGMENT_PROPERTIES_DEFAULT
+HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT
+hb_buffer_create
+hb_buffer_reference
+hb_buffer_get_empty
+hb_buffer_destroy
+hb_buffer_reset
+hb_buffer_clear_contents
+hb_buffer_pre_allocate
+hb_buffer_allocation_successful
hb_buffer_add
-hb_buffer_add_utf16
+hb_buffer_add_codepoints
hb_buffer_add_utf32
+hb_buffer_add_utf16
hb_buffer_add_utf8
-hb_buffer_add_codepoints
-hb_buffer_allocation_successful
-hb_buffer_clear_contents
-hb_buffer_content_type_t
-hb_buffer_create
-hb_buffer_deserialize_glyphs
-hb_buffer_destroy
-hb_buffer_flags_t
+hb_buffer_add_latin1
+hb_buffer_set_content_type
hb_buffer_get_content_type
+hb_buffer_set_direction
hb_buffer_get_direction
-hb_buffer_get_empty
-hb_buffer_get_flags
-hb_buffer_get_glyph_infos
-hb_buffer_get_glyph_positions
+hb_buffer_set_script
+hb_buffer_get_script
+hb_buffer_set_language
hb_buffer_get_language
+hb_buffer_set_flags
+hb_buffer_get_flags
+hb_buffer_set_cluster_level
+hb_buffer_get_cluster_level
+hb_buffer_set_length
hb_buffer_get_length
-hb_buffer_get_replacement_codepoint
-hb_buffer_get_script
+hb_buffer_set_segment_properties
hb_buffer_get_segment_properties
+hb_buffer_guess_segment_properties
+hb_buffer_set_unicode_funcs
hb_buffer_get_unicode_funcs
+hb_buffer_set_user_data
hb_buffer_get_user_data
-hb_buffer_guess_segment_properties
+hb_buffer_get_glyph_infos
+hb_buffer_get_glyph_positions
+hb_buffer_set_replacement_codepoint
+hb_buffer_get_replacement_codepoint
hb_buffer_normalize_glyphs
-hb_buffer_pre_allocate
-hb_buffer_reference
-hb_buffer_reset
hb_buffer_reverse
+hb_buffer_reverse_range
hb_buffer_reverse_clusters
-hb_buffer_serialize_flags_t
+hb_buffer_serialize_glyphs
+hb_buffer_deserialize_glyphs
hb_buffer_serialize_format_from_string
-hb_buffer_serialize_format_t
hb_buffer_serialize_format_to_string
-hb_buffer_serialize_glyphs
hb_buffer_serialize_list_formats
-hb_buffer_set_content_type
-hb_buffer_set_direction
-hb_buffer_set_flags
-hb_buffer_set_language
-hb_buffer_set_length
-hb_buffer_set_replacement_codepoint
-hb_buffer_set_script
-hb_buffer_set_segment_properties
-hb_buffer_set_unicode_funcs
-hb_buffer_set_user_data
+hb_segment_properties_equal
+hb_segment_properties_hash
+hb_buffer_set_message_func
hb_buffer_t
hb_glyph_info_t
hb_glyph_position_t
-hb_segment_properties_equal
-hb_segment_properties_hash
+hb_buffer_content_type_t
+hb_buffer_flags_t
+hb_buffer_cluster_level_t
hb_segment_properties_t
+hb_buffer_serialize_format_t
+hb_buffer_serialize_flags_t
+hb_buffer_message_func_t
</SECTION>
<SECTION>
<FILE>hb-common</FILE>
-HB_DIRECTION_REVERSE
-HB_LANGUAGE_INVALID
-HB_TAG
-HB_TAG_NONE
-HB_TAG_MAX
-HB_UNTAG
-hb_bool_t
-hb_codepoint_t
-hb_destroy_func_t
+hb_tag_from_string
+hb_tag_to_string
hb_direction_from_string
-hb_direction_t
hb_direction_to_string
+hb_script_from_iso15924_tag
+hb_script_from_string
+hb_script_to_iso15924_tag
+hb_script_get_horizontal_direction
hb_language_from_string
+hb_language_to_string
hb_language_get_default
+hb_bool_t
+hb_codepoint_t
+hb_destroy_func_t
+hb_direction_t
hb_language_t
-hb_language_to_string
hb_mask_t
hb_position_t
-hb_script_from_iso15924_tag
-hb_script_from_string
-hb_script_get_horizontal_direction
-hb_script_t
-hb_script_to_iso15924_tag
-hb_tag_from_string
hb_tag_t
-hb_tag_to_string
+hb_script_t
hb_user_data_key_t
hb_var_int_t
+HB_TAG
+HB_TAG_NONE
+HB_TAG_MAX
+HB_TAG_MAX_SIGNED
+HB_UNTAG
+HB_DIRECTION_REVERSE
HB_DIRECTION_IS_BACKWARD
HB_DIRECTION_IS_FORWARD
HB_DIRECTION_IS_HORIZONTAL
HB_DIRECTION_IS_VALID
HB_DIRECTION_IS_VERTICAL
+HB_LANGUAGE_INVALID
<SUBSECTION Private>
HB_BEGIN_DECLS
HB_END_DECLS
@@ -242,14 +252,27 @@ hb_font_set_user_data
hb_font_subtract_glyph_origin_for_direction
hb_font_t
hb_reference_table_func_t
+hb_font_funcs_set_font_h_extents_func
+hb_font_funcs_set_font_v_extents_func
+hb_font_get_extents_for_direction
+hb_font_get_font_extents_func_t
+hb_font_get_font_h_extents_func_t
+hb_font_get_font_v_extents_func_t
+hb_font_get_h_extents
+hb_font_get_v_extents
+hb_font_set_parent
</SECTION>
<SECTION>
<FILE>hb-ft</FILE>
hb_ft_face_create
hb_ft_face_create_cached
+hb_ft_face_create_referenced
hb_ft_font_create
+hb_ft_font_create_referenced
hb_ft_font_get_face
+hb_ft_font_set_load_flags
+hb_ft_font_get_load_flags
hb_ft_font_set_funcs
</SECTION>
@@ -258,6 +281,7 @@ hb_ft_font_set_funcs
hb_glib_get_unicode_funcs
hb_glib_script_from_script
hb_glib_script_to_script
+hb_glib_blob_create
</SECTION>
<SECTION>
@@ -279,6 +303,13 @@ HB_GOBJECT_TYPE_SHAPE_PLAN
HB_GOBJECT_TYPE_UNICODE_COMBINING_CLASS
HB_GOBJECT_TYPE_UNICODE_FUNCS
HB_GOBJECT_TYPE_UNICODE_GENERAL_CATEGORY
+HB_GOBJECT_TYPE_BUFFER_CLUSTER_LEVEL
+HB_GOBJECT_TYPE_FEATURE
+HB_GOBJECT_TYPE_GLYPH_INFO
+HB_GOBJECT_TYPE_GLYPH_POSITION
+HB_GOBJECT_TYPE_SEGMENT_PROPERTIES
+HB_GOBJECT_TYPE_SET
+HB_GOBJECT_TYPE_USER_DATA_KEY
hb_gobject_blob_get_type
hb_gobject_buffer_content_type_get_type
hb_gobject_buffer_flags_get_type
@@ -296,6 +327,13 @@ hb_gobject_shape_plan_get_type
hb_gobject_unicode_combining_class_get_type
hb_gobject_unicode_funcs_get_type
hb_gobject_unicode_general_category_get_type
+hb_gobject_buffer_cluster_level_get_type
+hb_gobject_feature_get_type
+hb_gobject_glyph_info_get_type
+hb_gobject_glyph_position_get_type
+hb_gobject_segment_properties_get_type
+hb_gobject_set_get_type
+hb_gobject_user_data_key_get_type
<SUBSECTION Private>
HB_GOBJECT_H_IN
</SECTION>
@@ -343,6 +381,7 @@ HB_OT_LAYOUT_NO_SCRIPT_INDEX
HB_OT_TAG_GDEF
HB_OT_TAG_GPOS
HB_OT_TAG_GSUB
+HB_OT_TAG_JSTF
hb_ot_layout_collect_lookups
hb_ot_layout_feature_get_lookups
hb_ot_layout_get_attach_points
@@ -370,6 +409,7 @@ hb_ot_layout_table_get_feature_tags
hb_ot_layout_table_get_script_tags
hb_ot_layout_table_get_lookup_count
hb_ot_shape_plan_collect_lookups
+hb_ot_layout_language_get_required_feature_index
<SUBSECTION Private>
Xhb_ot_layout_lookup_enumerate_sequences
Xhb_ot_layout_lookup_position
@@ -490,12 +530,12 @@ hb_uniscribe_font_get_logfontw
<SECTION>
<FILE>hb-version</FILE>
-HB_VERSION_CHECK
+HB_VERSION_ATLEAST
HB_VERSION_MAJOR
HB_VERSION_MICRO
HB_VERSION_MINOR
HB_VERSION_STRING
hb_version
-hb_version_check
+hb_version_atleast
hb_version_string
</SECTION>
diff --git a/docs/harfbuzz.types b/docs/harfbuzz.types
new file mode 100644
index 0000000..d9664df
--- /dev/null
+++ b/docs/harfbuzz.types
@@ -0,0 +1,24 @@
+hb_gobject_blob_get_type
+hb_gobject_buffer_cluster_level_get_type
+hb_gobject_buffer_content_type_get_type
+hb_gobject_buffer_flags_get_type
+hb_gobject_buffer_get_type
+hb_gobject_buffer_serialize_flags_get_type
+hb_gobject_buffer_serialize_format_get_type
+hb_gobject_direction_get_type
+hb_gobject_face_get_type
+hb_gobject_feature_get_type
+hb_gobject_font_funcs_get_type
+hb_gobject_font_get_type
+hb_gobject_glyph_info_get_type
+hb_gobject_glyph_position_get_type
+hb_gobject_memory_mode_get_type
+hb_gobject_ot_layout_glyph_class_get_type
+hb_gobject_script_get_type
+hb_gobject_segment_properties_get_type
+hb_gobject_set_get_type
+hb_gobject_shape_plan_get_type
+hb_gobject_unicode_combining_class_get_type
+hb_gobject_unicode_funcs_get_type
+hb_gobject_unicode_general_category_get_type
+hb_gobject_user_data_key_get_type
diff --git a/docs/html/HarfBuzz.png b/docs/html/HarfBuzz.png
new file mode 100644
index 0000000..d58d9fc
--- /dev/null
+++ b/docs/html/HarfBuzz.png
Binary files differ
diff --git a/docs/html/adding-text-to-the-buffer.html b/docs/html/adding-text-to-the-buffer.html
new file mode 100644
index 0000000..ccf96bc
--- /dev/null
+++ b/docs/html/adding-text-to-the-buffer.html
@@ -0,0 +1,35 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Adding text to the buffer: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="buffers-language-script-and-direction.html" title="Buffers, language, script and direction">
+<link rel="prev" href="buffers-language-script-and-direction.html" title="Buffers, language, script and direction">
+<link rel="next" href="setting-buffer-properties.html" title="Setting buffer properties">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="buffers-language-script-and-direction.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="buffers-language-script-and-direction.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="setting-buffer-properties.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="adding-text-to-the-buffer"></a>Adding text to the buffer</h2></div></div></div>
+<p>
+ Now we have a brand new Harfbuzz buffer. Let's start filling it
+ with text! From Harfbuzz's perspective, a buffer is just a stream
+ of Unicode codepoints, but your input string is probably in one of
+ the standard Unicode character encodings (UTF-8, UTF-16, UTF-32)
+ </p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/annotation-glossary.html b/docs/html/annotation-glossary.html
new file mode 100644
index 0000000..ccbbafe
--- /dev/null
+++ b/docs/html/annotation-glossary.html
@@ -0,0 +1,77 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Annotation Glossary: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="deprecated-api-index.html" title="Index of deprecated API">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_glossary"><a class="shortcut" href="#glsA">A</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#glsC">C</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#glsD">D</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#glsE">E</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#glsI">I</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#glsN">N</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#glsO">O</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#glsS">S</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#glsT">T</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="deprecated-api-index.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><img src="right-insensitive.png" width="16" height="16" border="0"></td>
+</tr></table>
+<div class="glossary">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="annotation-glossary"></a>Annotation Glossary</h2></div></div></div>
+<a name="glsA"></a><h3 class="title">A</h3>
+<dt><span class="glossterm"><a name="annotation-glossterm-allow-none"></a>allow-none</span></dt>
+<dd class="glossdef"><p>NULL is OK, both for passing and for returning.</p></dd>
+<dt><span class="glossterm"><a name="annotation-glossterm-array"></a>array</span></dt>
+<dd class="glossdef"><p>Parameter points to an array of items.</p></dd>
+<a name="glsC"></a><h3 class="title">C</h3>
+<dt><span class="glossterm"><a name="annotation-glossterm-closure"></a>closure</span></dt>
+<dd class="glossdef"><p>This parameter is a 'user_data', for callbacks; many bindings can pass NULL here.</p></dd>
+<a name="glsD"></a><h3 class="title">D</h3>
+<dt><span class="glossterm"><a name="annotation-glossterm-destroy"></a>destroy</span></dt>
+<dd class="glossdef"><p>This parameter is a 'destroy_data', for callbacks.</p></dd>
+<a name="glsE"></a><h3 class="title">E</h3>
+<dt><span class="glossterm"><a name="annotation-glossterm-element-type"></a>element-type</span></dt>
+<dd class="glossdef"><p>Generics and defining elements of containers and arrays.</p></dd>
+<a name="glsI"></a><h3 class="title">I</h3>
+<dt><span class="glossterm"><a name="annotation-glossterm-inout"></a>inout</span></dt>
+<dd class="glossdef"><p>Parameter for input and for returning results. Default is <acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>.</p></dd>
+<a name="glsN"></a><h3 class="title">N</h3>
+<dt><span class="glossterm"><a name="annotation-glossterm-nullable"></a>nullable</span></dt>
+<dd class="glossdef"><p>NULL may be passed as the value in, out, in-out; or as a return value.</p></dd>
+<a name="glsO"></a><h3 class="title">O</h3>
+<dt><span class="glossterm"><a name="annotation-glossterm-out"></a>out</span></dt>
+<dd class="glossdef"><p>Parameter for returning results. Default is <acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>.</p></dd>
+<a name="glsS"></a><h3 class="title">S</h3>
+<dt><span class="glossterm"><a name="annotation-glossterm-scope%20notified"></a>scope notified</span></dt>
+<dd class="glossdef"><p>The callback is valid until the GDestroyNotify argument is called.</p></dd>
+<dt><span class="glossterm"><a name="annotation-glossterm-skip"></a>skip</span></dt>
+<dd class="glossdef"><p>Exposed in C code, not necessarily available in other languages.</p></dd>
+<a name="glsT"></a><h3 class="title">T</h3>
+<dt><span class="glossterm"><a name="annotation-glossterm-transfer%20full"></a>transfer full</span></dt>
+<dd class="glossdef"><p>Free data after the code is done.</p></dd>
+<dt><span class="glossterm"><a name="annotation-glossterm-transfer%20none"></a>transfer none</span></dt>
+<dd class="glossdef"><p>Don't free data after the code is done.</p></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-0-9-10.html b/docs/html/api-index-0-9-10.html
new file mode 100644
index 0000000..76ac9c6
--- /dev/null
+++ b/docs/html/api-index-0-9-10.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 0.9.10: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-0-9-8.html" title="Index of new symbols in 0.9.8">
+<link rel="next" href="api-index-0-9-11.html" title="Index of new symbols in 0.9.11">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxO">O</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxS">S</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-0-9-8.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-0-9-11.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-0-9-10"></a>Index of new symbols in 0.9.10</h2></div></div></div>
+<a name="idx"></a><a name="idxO"></a><h3 class="title">O</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-get-size-params" title="hb_ot_layout_get_size_params ()">hb_ot_layout_get_size_params</a>, function in <a class="link" href="harfbuzz-hb-ot-layout.html" title="hb-ot-layout">hb-ot-layout</a>
+</dt>
+<dd></dd>
+<a name="idxS"></a><h3 class="title">S</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-invert" title="hb_set_invert ()">hb_set_invert</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-0-9-11.html b/docs/html/api-index-0-9-11.html
new file mode 100644
index 0000000..83271c7
--- /dev/null
+++ b/docs/html/api-index-0-9-11.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 0.9.11: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-0-9-10.html" title="Index of new symbols in 0.9.10">
+<link rel="next" href="api-index-0-9-20.html" title="Index of new symbols in 0.9.20">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxB">B</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-0-9-10.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-0-9-20.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-0-9-11"></a>Index of new symbols in 0.9.11</h2></div></div></div>
+<a name="idx"></a><a name="idxB"></a><h3 class="title">B</h3>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-clear-contents" title="hb_buffer_clear_contents ()">hb_buffer_clear_contents</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-0-9-2.html b/docs/html/api-index-0-9-2.html
new file mode 100644
index 0000000..75ae862
--- /dev/null
+++ b/docs/html/api-index-0-9-2.html
@@ -0,0 +1,746 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 0.9.2: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-full.html" title="API Index">
+<link rel="next" href="api-index-0-9-5.html" title="Index of new symbols in 0.9.5">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxB">B</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxD">D</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxF">F</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxL">L</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxO">O</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxS">S</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxT">T</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxU">U</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxV">V</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-full.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-0-9-5.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-0-9-2"></a>Index of new symbols in 0.9.2</h2></div></div></div>
+<a name="idx"></a><a name="idxB"></a><h3 class="title">B</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-blob.html#hb-blob-create" title="hb_blob_create ()">hb_blob_create</a>, function in <a class="link" href="harfbuzz-hb-blob.html" title="hb-blob">hb-blob</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-blob.html#hb-blob-create-sub-blob" title="hb_blob_create_sub_blob ()">hb_blob_create_sub_blob</a>, function in <a class="link" href="harfbuzz-hb-blob.html" title="hb-blob">hb-blob</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-blob.html#hb-blob-destroy" title="hb_blob_destroy ()">hb_blob_destroy</a>, function in <a class="link" href="harfbuzz-hb-blob.html" title="hb-blob">hb-blob</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-blob.html#hb-blob-get-data" title="hb_blob_get_data ()">hb_blob_get_data</a>, function in <a class="link" href="harfbuzz-hb-blob.html" title="hb-blob">hb-blob</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-blob.html#hb-blob-get-data-writable" title="hb_blob_get_data_writable ()">hb_blob_get_data_writable</a>, function in <a class="link" href="harfbuzz-hb-blob.html" title="hb-blob">hb-blob</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-blob.html#hb-blob-get-empty" title="hb_blob_get_empty ()">hb_blob_get_empty</a>, function in <a class="link" href="harfbuzz-hb-blob.html" title="hb-blob">hb-blob</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-blob.html#hb-blob-get-length" title="hb_blob_get_length ()">hb_blob_get_length</a>, function in <a class="link" href="harfbuzz-hb-blob.html" title="hb-blob">hb-blob</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-blob.html#hb-blob-get-user-data" title="hb_blob_get_user_data ()">hb_blob_get_user_data</a>, function in <a class="link" href="harfbuzz-hb-blob.html" title="hb-blob">hb-blob</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-blob.html#hb-blob-is-immutable" title="hb_blob_is_immutable ()">hb_blob_is_immutable</a>, function in <a class="link" href="harfbuzz-hb-blob.html" title="hb-blob">hb-blob</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-blob.html#hb-blob-make-immutable" title="hb_blob_make_immutable ()">hb_blob_make_immutable</a>, function in <a class="link" href="harfbuzz-hb-blob.html" title="hb-blob">hb-blob</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-blob.html#hb-blob-reference" title="hb_blob_reference ()">hb_blob_reference</a>, function in <a class="link" href="harfbuzz-hb-blob.html" title="hb-blob">hb-blob</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-blob.html#hb-blob-set-user-data" title="hb_blob_set_user_data ()">hb_blob_set_user_data</a>, function in <a class="link" href="harfbuzz-hb-blob.html" title="hb-blob">hb-blob</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-utf16" title="hb_buffer_add_utf16 ()">hb_buffer_add_utf16</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-utf32" title="hb_buffer_add_utf32 ()">hb_buffer_add_utf32</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-utf8" title="hb_buffer_add_utf8 ()">hb_buffer_add_utf8</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-allocation-successful" title="hb_buffer_allocation_successful ()">hb_buffer_allocation_successful</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-create" title="hb_buffer_create ()">hb_buffer_create</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-destroy" title="hb_buffer_destroy ()">hb_buffer_destroy</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-direction" title="hb_buffer_get_direction ()">hb_buffer_get_direction</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-empty" title="hb_buffer_get_empty ()">hb_buffer_get_empty</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-glyph-infos" title="hb_buffer_get_glyph_infos ()">hb_buffer_get_glyph_infos</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-glyph-positions" title="hb_buffer_get_glyph_positions ()">hb_buffer_get_glyph_positions</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-language" title="hb_buffer_get_language ()">hb_buffer_get_language</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-length" title="hb_buffer_get_length ()">hb_buffer_get_length</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-script" title="hb_buffer_get_script ()">hb_buffer_get_script</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-unicode-funcs" title="hb_buffer_get_unicode_funcs ()">hb_buffer_get_unicode_funcs</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-user-data" title="hb_buffer_get_user_data ()">hb_buffer_get_user_data</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-normalize-glyphs" title="hb_buffer_normalize_glyphs ()">hb_buffer_normalize_glyphs</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-pre-allocate" title="hb_buffer_pre_allocate ()">hb_buffer_pre_allocate</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-reference" title="hb_buffer_reference ()">hb_buffer_reference</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-reset" title="hb_buffer_reset ()">hb_buffer_reset</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-reverse" title="hb_buffer_reverse ()">hb_buffer_reverse</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-reverse-clusters" title="hb_buffer_reverse_clusters ()">hb_buffer_reverse_clusters</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t">hb_buffer_serialize_format_t</a>, enum in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-direction" title="hb_buffer_set_direction ()">hb_buffer_set_direction</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-language" title="hb_buffer_set_language ()">hb_buffer_set_language</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-length" title="hb_buffer_set_length ()">hb_buffer_set_length</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-script" title="hb_buffer_set_script ()">hb_buffer_set_script</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-unicode-funcs" title="hb_buffer_set_unicode_funcs ()">hb_buffer_set_unicode_funcs</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-user-data" title="hb_buffer_set_user_data ()">hb_buffer_set_user_data</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<a name="idxD"></a><h3 class="title">D</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-common.html#hb-direction-from-string" title="hb_direction_from_string ()">hb_direction_from_string</a>, function in <a class="link" href="harfbuzz-hb-common.html" title="hb-common">hb-common</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-common.html#hb-direction-to-string" title="hb_direction_to_string ()">hb_direction_to_string</a>, function in <a class="link" href="harfbuzz-hb-common.html" title="hb-common">hb-common</a>
+</dt>
+<dd></dd>
+<a name="idxF"></a><h3 class="title">F</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-create" title="hb_face_create ()">hb_face_create</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-create-for-tables" title="hb_face_create_for_tables ()">hb_face_create_for_tables</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-destroy" title="hb_face_destroy ()">hb_face_destroy</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-get-empty" title="hb_face_get_empty ()">hb_face_get_empty</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-get-index" title="hb_face_get_index ()">hb_face_get_index</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-get-upem" title="hb_face_get_upem ()">hb_face_get_upem</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-get-user-data" title="hb_face_get_user_data ()">hb_face_get_user_data</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-is-immutable" title="hb_face_is_immutable ()">hb_face_is_immutable</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-make-immutable" title="hb_face_make_immutable ()">hb_face_make_immutable</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-reference" title="hb_face_reference ()">hb_face_reference</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-reference-blob" title="hb_face_reference_blob ()">hb_face_reference_blob</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-reference-table" title="hb_face_reference_table ()">hb_face_reference_table</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-set-index" title="hb_face_set_index ()">hb_face_set_index</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-set-upem" title="hb_face_set_upem ()">hb_face_set_upem</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-set-user-data" title="hb_face_set_user_data ()">hb_face_set_user_data</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-add-glyph-origin-for-direction" title="hb_font_add_glyph_origin_for_direction ()">hb_font_add_glyph_origin_for_direction</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-create" title="hb_font_create ()">hb_font_create</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-create-sub-font" title="hb_font_create_sub_font ()">hb_font_create_sub_font</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-destroy" title="hb_font_destroy ()">hb_font_destroy</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-create" title="hb_font_funcs_create ()">hb_font_funcs_create</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-destroy" title="hb_font_funcs_destroy ()">hb_font_funcs_destroy</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-get-empty" title="hb_font_funcs_get_empty ()">hb_font_funcs_get_empty</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-get-user-data" title="hb_font_funcs_get_user_data ()">hb_font_funcs_get_user_data</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-is-immutable" title="hb_font_funcs_is_immutable ()">hb_font_funcs_is_immutable</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-make-immutable" title="hb_font_funcs_make_immutable ()">hb_font_funcs_make_immutable</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-reference" title="hb_font_funcs_reference ()">hb_font_funcs_reference</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-contour-point-func" title="hb_font_funcs_set_glyph_contour_point_func ()">hb_font_funcs_set_glyph_contour_point_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-extents-func" title="hb_font_funcs_set_glyph_extents_func ()">hb_font_funcs_set_glyph_extents_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-from-name-func" title="hb_font_funcs_set_glyph_from_name_func ()">hb_font_funcs_set_glyph_from_name_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-func" title="hb_font_funcs_set_glyph_func ()">hb_font_funcs_set_glyph_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-h-advance-func" title="hb_font_funcs_set_glyph_h_advance_func ()">hb_font_funcs_set_glyph_h_advance_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-h-kerning-func" title="hb_font_funcs_set_glyph_h_kerning_func ()">hb_font_funcs_set_glyph_h_kerning_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-h-origin-func" title="hb_font_funcs_set_glyph_h_origin_func ()">hb_font_funcs_set_glyph_h_origin_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-name-func" title="hb_font_funcs_set_glyph_name_func ()">hb_font_funcs_set_glyph_name_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-v-advance-func" title="hb_font_funcs_set_glyph_v_advance_func ()">hb_font_funcs_set_glyph_v_advance_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-v-kerning-func" title="hb_font_funcs_set_glyph_v_kerning_func ()">hb_font_funcs_set_glyph_v_kerning_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-v-origin-func" title="hb_font_funcs_set_glyph_v_origin_func ()">hb_font_funcs_set_glyph_v_origin_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-user-data" title="hb_font_funcs_set_user_data ()">hb_font_funcs_set_user_data</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-empty" title="hb_font_get_empty ()">hb_font_get_empty</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-face" title="hb_font_get_face ()">hb_font_get_face</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph" title="hb_font_get_glyph ()">hb_font_get_glyph</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-advance-for-direction" title="hb_font_get_glyph_advance_for_direction ()">hb_font_get_glyph_advance_for_direction</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-contour-point" title="hb_font_get_glyph_contour_point ()">hb_font_get_glyph_contour_point</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-contour-point-for-origin" title="hb_font_get_glyph_contour_point_for_origin ()">hb_font_get_glyph_contour_point_for_origin</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-extents" title="hb_font_get_glyph_extents ()">hb_font_get_glyph_extents</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-extents-for-origin" title="hb_font_get_glyph_extents_for_origin ()">hb_font_get_glyph_extents_for_origin</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-from-name" title="hb_font_get_glyph_from_name ()">hb_font_get_glyph_from_name</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-h-advance" title="hb_font_get_glyph_h_advance ()">hb_font_get_glyph_h_advance</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-h-kerning" title="hb_font_get_glyph_h_kerning ()">hb_font_get_glyph_h_kerning</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-h-origin" title="hb_font_get_glyph_h_origin ()">hb_font_get_glyph_h_origin</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-kerning-for-direction" title="hb_font_get_glyph_kerning_for_direction ()">hb_font_get_glyph_kerning_for_direction</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-name" title="hb_font_get_glyph_name ()">hb_font_get_glyph_name</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-origin-for-direction" title="hb_font_get_glyph_origin_for_direction ()">hb_font_get_glyph_origin_for_direction</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-v-advance" title="hb_font_get_glyph_v_advance ()">hb_font_get_glyph_v_advance</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-v-kerning" title="hb_font_get_glyph_v_kerning ()">hb_font_get_glyph_v_kerning</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-v-origin" title="hb_font_get_glyph_v_origin ()">hb_font_get_glyph_v_origin</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-parent" title="hb_font_get_parent ()">hb_font_get_parent</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-ppem" title="hb_font_get_ppem ()">hb_font_get_ppem</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-scale" title="hb_font_get_scale ()">hb_font_get_scale</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-user-data" title="hb_font_get_user_data ()">hb_font_get_user_data</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-glyph-from-string" title="hb_font_glyph_from_string ()">hb_font_glyph_from_string</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-glyph-to-string" title="hb_font_glyph_to_string ()">hb_font_glyph_to_string</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-is-immutable" title="hb_font_is_immutable ()">hb_font_is_immutable</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-make-immutable" title="hb_font_make_immutable ()">hb_font_make_immutable</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-reference" title="hb_font_reference ()">hb_font_reference</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-set-funcs" title="hb_font_set_funcs ()">hb_font_set_funcs</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-set-funcs-data" title="hb_font_set_funcs_data ()">hb_font_set_funcs_data</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-set-ppem" title="hb_font_set_ppem ()">hb_font_set_ppem</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-set-scale" title="hb_font_set_scale ()">hb_font_set_scale</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-set-user-data" title="hb_font_set_user_data ()">hb_font_set_user_data</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-subtract-glyph-origin-for-direction" title="hb_font_subtract_glyph_origin_for_direction ()">hb_font_subtract_glyph_origin_for_direction</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-ft.html#hb-ft-face-create" title="hb_ft_face_create ()">hb_ft_face_create</a>, function in <a class="link" href="harfbuzz-hb-ft.html" title="hb-ft">hb-ft</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-ft.html#hb-ft-face-create-cached" title="hb_ft_face_create_cached ()">hb_ft_face_create_cached</a>, function in <a class="link" href="harfbuzz-hb-ft.html" title="hb-ft">hb-ft</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-ft.html#hb-ft-font-create" title="hb_ft_font_create ()">hb_ft_font_create</a>, function in <a class="link" href="harfbuzz-hb-ft.html" title="hb-ft">hb-ft</a>
+</dt>
+<dd></dd>
+<a name="idxL"></a><h3 class="title">L</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-common.html#hb-language-from-string" title="hb_language_from_string ()">hb_language_from_string</a>, function in <a class="link" href="harfbuzz-hb-common.html" title="hb-common">hb-common</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-common.html#hb-language-get-default" title="hb_language_get_default ()">hb_language_get_default</a>, function in <a class="link" href="harfbuzz-hb-common.html" title="hb-common">hb-common</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-common.html#hb-language-to-string" title="hb_language_to_string ()">hb_language_to_string</a>, function in <a class="link" href="harfbuzz-hb-common.html" title="hb-common">hb-common</a>
+</dt>
+<dd></dd>
+<a name="idxO"></a><h3 class="title">O</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-ot-shape.html#hb-ot-shape-glyphs-closure" title="hb_ot_shape_glyphs_closure ()">hb_ot_shape_glyphs_closure</a>, function in <a class="link" href="harfbuzz-hb-ot-shape.html" title="hb-ot-shape">hb-ot-shape</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-ot-tag.html#hb-ot-tag-to-language" title="hb_ot_tag_to_language ()">hb_ot_tag_to_language</a>, function in <a class="link" href="harfbuzz-hb-ot-tag.html" title="hb-ot-tag">hb-ot-tag</a>
+</dt>
+<dd></dd>
+<a name="idxS"></a><h3 class="title">S</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-common.html#hb-script-from-iso15924-tag" title="hb_script_from_iso15924_tag ()">hb_script_from_iso15924_tag</a>, function in <a class="link" href="harfbuzz-hb-common.html" title="hb-common">hb-common</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-common.html#hb-script-from-string" title="hb_script_from_string ()">hb_script_from_string</a>, function in <a class="link" href="harfbuzz-hb-common.html" title="hb-common">hb-common</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-common.html#hb-script-get-horizontal-direction" title="hb_script_get_horizontal_direction ()">hb_script_get_horizontal_direction</a>, function in <a class="link" href="harfbuzz-hb-common.html" title="hb-common">hb-common</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-common.html#hb-script-to-iso15924-tag" title="hb_script_to_iso15924_tag ()">hb_script_to_iso15924_tag</a>, function in <a class="link" href="harfbuzz-hb-common.html" title="hb-common">hb-common</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-add" title="hb_set_add ()">hb_set_add</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-allocation-successful" title="hb_set_allocation_successful ()">hb_set_allocation_successful</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-clear" title="hb_set_clear ()">hb_set_clear</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-create" title="hb_set_create ()">hb_set_create</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-del" title="hb_set_del ()">hb_set_del</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-destroy" title="hb_set_destroy ()">hb_set_destroy</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-get-empty" title="hb_set_get_empty ()">hb_set_get_empty</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-get-user-data" title="hb_set_get_user_data ()">hb_set_get_user_data</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-has" title="hb_set_has ()">hb_set_has</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-intersect" title="hb_set_intersect ()">hb_set_intersect</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-next" title="hb_set_next ()">hb_set_next</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-reference" title="hb_set_reference ()">hb_set_reference</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-set" title="hb_set_set ()">hb_set_set</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-set-user-data" title="hb_set_set_user_data ()">hb_set_set_user_data</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-subtract" title="hb_set_subtract ()">hb_set_subtract</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-symmetric-difference" title="hb_set_symmetric_difference ()">hb_set_symmetric_difference</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-union" title="hb_set_union ()">hb_set_union</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Shaping.html#hb-shape" title="hb_shape ()">hb_shape</a>, function in <a class="link" href="harfbuzz-Shaping.html" title="Shaping">Shaping</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Shaping.html#hb-shape-full" title="hb_shape_full ()">hb_shape_full</a>, function in <a class="link" href="harfbuzz-Shaping.html" title="Shaping">Shaping</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Shaping.html#hb-shape-list-shapers" title="hb_shape_list_shapers ()">hb_shape_list_shapers</a>, function in <a class="link" href="harfbuzz-Shaping.html" title="Shaping">Shaping</a>
+</dt>
+<dd></dd>
+<a name="idxT"></a><h3 class="title">T</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-common.html#hb-tag-from-string" title="hb_tag_from_string ()">hb_tag_from_string</a>, function in <a class="link" href="harfbuzz-hb-common.html" title="hb-common">hb-common</a>
+</dt>
+<dd></dd>
+<a name="idxU"></a><h3 class="title">U</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-combining-class" title="hb_unicode_combining_class ()">hb_unicode_combining_class</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-compose" title="hb_unicode_compose ()">hb_unicode_compose</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-decompose" title="hb_unicode_decompose ()">hb_unicode_decompose</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-decompose-compatibility" title="hb_unicode_decompose_compatibility ()">hb_unicode_decompose_compatibility</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-eastasian-width" title="hb_unicode_eastasian_width ()">hb_unicode_eastasian_width</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-create" title="hb_unicode_funcs_create ()">hb_unicode_funcs_create</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-destroy" title="hb_unicode_funcs_destroy ()">hb_unicode_funcs_destroy</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-get-empty" title="hb_unicode_funcs_get_empty ()">hb_unicode_funcs_get_empty</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-get-parent" title="hb_unicode_funcs_get_parent ()">hb_unicode_funcs_get_parent</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-get-user-data" title="hb_unicode_funcs_get_user_data ()">hb_unicode_funcs_get_user_data</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-is-immutable" title="hb_unicode_funcs_is_immutable ()">hb_unicode_funcs_is_immutable</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-make-immutable" title="hb_unicode_funcs_make_immutable ()">hb_unicode_funcs_make_immutable</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-reference" title="hb_unicode_funcs_reference ()">hb_unicode_funcs_reference</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-combining-class-func" title="hb_unicode_funcs_set_combining_class_func ()">hb_unicode_funcs_set_combining_class_func</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-compose-func" title="hb_unicode_funcs_set_compose_func ()">hb_unicode_funcs_set_compose_func</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-decompose-compatibility-func" title="hb_unicode_funcs_set_decompose_compatibility_func ()">hb_unicode_funcs_set_decompose_compatibility_func</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-decompose-func" title="hb_unicode_funcs_set_decompose_func ()">hb_unicode_funcs_set_decompose_func</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-eastasian-width-func" title="hb_unicode_funcs_set_eastasian_width_func ()">hb_unicode_funcs_set_eastasian_width_func</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-general-category-func" title="hb_unicode_funcs_set_general_category_func ()">hb_unicode_funcs_set_general_category_func</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-mirroring-func" title="hb_unicode_funcs_set_mirroring_func ()">hb_unicode_funcs_set_mirroring_func</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-script-func" title="hb_unicode_funcs_set_script_func ()">hb_unicode_funcs_set_script_func</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-user-data" title="hb_unicode_funcs_set_user_data ()">hb_unicode_funcs_set_user_data</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-general-category" title="hb_unicode_general_category ()">hb_unicode_general_category</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-mirroring" title="hb_unicode_mirroring ()">hb_unicode_mirroring</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-script" title="hb_unicode_script ()">hb_unicode_script</a>, function in <a class="link" href="harfbuzz-hb-unicode.html" title="hb-unicode">hb-unicode</a>
+</dt>
+<dd></dd>
+<a name="idxV"></a><h3 class="title">V</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-version.html#hb-version" title="hb_version ()">hb_version</a>, function in <a class="link" href="harfbuzz-hb-version.html" title="hb-version">hb-version</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-version.html#hb-version-string" title="hb_version_string ()">hb_version_string</a>, function in <a class="link" href="harfbuzz-hb-version.html" title="hb-version">hb-version</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-0-9-20.html b/docs/html/api-index-0-9-20.html
new file mode 100644
index 0000000..cb1b1f6
--- /dev/null
+++ b/docs/html/api-index-0-9-20.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 0.9.20: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-0-9-11.html" title="Index of new symbols in 0.9.11">
+<link rel="next" href="api-index-0-9-22.html" title="Index of new symbols in 0.9.22">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxB">B</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-0-9-11.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-0-9-22.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-0-9-20"></a>Index of new symbols in 0.9.20</h2></div></div></div>
+<a name="idx"></a><a name="idxB"></a><h3 class="title">B</h3>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-flags-t" title="enum hb_buffer_flags_t">hb_buffer_flags_t</a>, enum in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-flags-t" title="enum hb_buffer_serialize_flags_t">hb_buffer_serialize_flags_t</a>, enum in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-0-9-22.html b/docs/html/api-index-0-9-22.html
new file mode 100644
index 0000000..29003d2
--- /dev/null
+++ b/docs/html/api-index-0-9-22.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 0.9.22: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-0-9-20.html" title="Index of new symbols in 0.9.20">
+<link rel="next" href="api-index-0-9-28.html" title="Index of new symbols in 0.9.28">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxO">O</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-0-9-20.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-0-9-28.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-0-9-22"></a>Index of new symbols in 0.9.22</h2></div></div></div>
+<a name="idx"></a><a name="idxO"></a><h3 class="title">O</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-table-get-lookup-count" title="hb_ot_layout_table_get_lookup_count ()">hb_ot_layout_table_get_lookup_count</a>, function in <a class="link" href="harfbuzz-hb-ot-layout.html" title="hb-ot-layout">hb-ot-layout</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-0-9-28.html b/docs/html/api-index-0-9-28.html
new file mode 100644
index 0000000..db1a51b
--- /dev/null
+++ b/docs/html/api-index-0-9-28.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 0.9.28: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-0-9-22.html" title="Index of new symbols in 0.9.22">
+<link rel="next" href="api-index-0-9-30.html" title="Index of new symbols in 0.9.30">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxO">O</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-0-9-22.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-0-9-30.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-0-9-28"></a>Index of new symbols in 0.9.28</h2></div></div></div>
+<a name="idx"></a><a name="idxO"></a><h3 class="title">O</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-ot-font.html#hb-ot-font-set-funcs" title="hb_ot_font_set_funcs ()">hb_ot_font_set_funcs</a>, function in <a class="link" href="harfbuzz-hb-ot-font.html" title="hb-ot-font">hb-ot-font</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-0-9-30.html b/docs/html/api-index-0-9-30.html
new file mode 100644
index 0000000..e28f4db
--- /dev/null
+++ b/docs/html/api-index-0-9-30.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 0.9.30: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-0-9-28.html" title="Index of new symbols in 0.9.28">
+<link rel="next" href="api-index-0-9-31.html" title="Index of new symbols in 0.9.31">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxO">O</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxV">V</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-0-9-28.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-0-9-31.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-0-9-30"></a>Index of new symbols in 0.9.30</h2></div></div></div>
+<a name="idx"></a><a name="idxO"></a><h3 class="title">O</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-language-get-required-feature" title="hb_ot_layout_language_get_required_feature ()">hb_ot_layout_language_get_required_feature</a>, function in <a class="link" href="harfbuzz-hb-ot-layout.html" title="hb-ot-layout">hb-ot-layout</a>
+</dt>
+<dd></dd>
+<a name="idxV"></a><h3 class="title">V</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-version.html#hb-version-atleast" title="hb_version_atleast ()">hb_version_atleast</a>, function in <a class="link" href="harfbuzz-hb-version.html" title="hb-version">hb-version</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-0-9-31.html b/docs/html/api-index-0-9-31.html
new file mode 100644
index 0000000..b011157
--- /dev/null
+++ b/docs/html/api-index-0-9-31.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 0.9.31: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-0-9-30.html" title="Index of new symbols in 0.9.30">
+<link rel="next" href="api-index-0-9-38.html" title="Index of new symbols in 0.9.38">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxB">B</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-0-9-30.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-0-9-38.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-0-9-31"></a>Index of new symbols in 0.9.31</h2></div></div></div>
+<a name="idx"></a><a name="idxB"></a><h3 class="title">B</h3>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-codepoints" title="hb_buffer_add_codepoints ()">hb_buffer_add_codepoints</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-replacement-codepoint" title="hb_buffer_get_replacement_codepoint ()">hb_buffer_get_replacement_codepoint</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#HB-BUFFER-REPLACEMENT-CODEPOINT-DEFAULT:CAPS" title="HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT">HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT</a>, macro in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-replacement-codepoint" title="hb_buffer_set_replacement_codepoint ()">hb_buffer_set_replacement_codepoint</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-0-9-38.html b/docs/html/api-index-0-9-38.html
new file mode 100644
index 0000000..263adb8
--- /dev/null
+++ b/docs/html/api-index-0-9-38.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 0.9.38: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-0-9-31.html" title="Index of new symbols in 0.9.31">
+<link rel="next" href="api-index-0-9-39.html" title="Index of new symbols in 0.9.39">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxF">F</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxG">G</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-0-9-31.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-0-9-39.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-0-9-38"></a>Index of new symbols in 0.9.38</h2></div></div></div>
+<a name="idx"></a><a name="idxF"></a><h3 class="title">F</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-ft.html#hb-ft-face-create-referenced" title="hb_ft_face_create_referenced ()">hb_ft_face_create_referenced</a>, function in <a class="link" href="harfbuzz-hb-ft.html" title="hb-ft">hb-ft</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-ft.html#hb-ft-font-create-referenced" title="hb_ft_font_create_referenced ()">hb_ft_font_create_referenced</a>, function in <a class="link" href="harfbuzz-hb-ft.html" title="hb-ft">hb-ft</a>
+</dt>
+<dd></dd>
+<a name="idxG"></a><h3 class="title">G</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-glib.html#hb-glib-blob-create" title="hb_glib_blob_create ()">hb_glib_blob_create</a>, function in <a class="link" href="harfbuzz-hb-glib.html" title="hb-glib">hb-glib</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-0-9-39.html b/docs/html/api-index-0-9-39.html
new file mode 100644
index 0000000..dc36815
--- /dev/null
+++ b/docs/html/api-index-0-9-39.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 0.9.39: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-0-9-38.html" title="Index of new symbols in 0.9.38">
+<link rel="next" href="api-index-0-9-41.html" title="Index of new symbols in 0.9.41">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxB">B</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-0-9-38.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-0-9-41.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-0-9-39"></a>Index of new symbols in 0.9.39</h2></div></div></div>
+<a name="idx"></a><a name="idxB"></a><h3 class="title">B</h3>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-latin1" title="hb_buffer_add_latin1 ()">hb_buffer_add_latin1</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-0-9-41.html b/docs/html/api-index-0-9-41.html
new file mode 100644
index 0000000..b4b2466
--- /dev/null
+++ b/docs/html/api-index-0-9-41.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 0.9.41: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-0-9-39.html" title="Index of new symbols in 0.9.39">
+<link rel="next" href="api-index-0-9-42.html" title="Index of new symbols in 0.9.42">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxB">B</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-0-9-39.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-0-9-42.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-0-9-41"></a>Index of new symbols in 0.9.41</h2></div></div></div>
+<a name="idx"></a><a name="idxB"></a><h3 class="title">B</h3>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-reverse-range" title="hb_buffer_reverse_range ()">hb_buffer_reverse_range</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-0-9-42.html b/docs/html/api-index-0-9-42.html
new file mode 100644
index 0000000..4fdb417
--- /dev/null
+++ b/docs/html/api-index-0-9-42.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 0.9.42: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-0-9-41.html" title="Index of new symbols in 0.9.41">
+<link rel="next" href="api-index-1-0-5.html" title="Index of new symbols in 1.0.5">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxB">B</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-0-9-41.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-1-0-5.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-0-9-42"></a>Index of new symbols in 0.9.42</h2></div></div></div>
+<a name="idx"></a><a name="idxB"></a><h3 class="title">B</h3>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-cluster-level" title="hb_buffer_get_cluster_level ()">hb_buffer_get_cluster_level</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-cluster-level" title="hb_buffer_set_cluster_level ()">hb_buffer_set_cluster_level</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-0-9-5.html b/docs/html/api-index-0-9-5.html
new file mode 100644
index 0000000..5f03c6d
--- /dev/null
+++ b/docs/html/api-index-0-9-5.html
@@ -0,0 +1,56 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 0.9.5: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-0-9-2.html" title="Index of new symbols in 0.9.2">
+<link rel="next" href="api-index-0-9-7.html" title="Index of new symbols in 0.9.7">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxB">B</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxF">F</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxT">T</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-0-9-2.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-0-9-7.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-0-9-5"></a>Index of new symbols in 0.9.5</h2></div></div></div>
+<a name="idx"></a><a name="idxB"></a><h3 class="title">B</h3>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-content-type" title="hb_buffer_get_content_type ()">hb_buffer_get_content_type</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-content-type" title="hb_buffer_set_content_type ()">hb_buffer_set_content_type</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<a name="idxF"></a><h3 class="title">F</h3>
+<dt>
+<a class="link" href="harfbuzz-Shaping.html#hb-feature-from-string" title="hb_feature_from_string ()">hb_feature_from_string</a>, function in <a class="link" href="harfbuzz-Shaping.html" title="Shaping">Shaping</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Shaping.html#hb-feature-to-string" title="hb_feature_to_string ()">hb_feature_to_string</a>, function in <a class="link" href="harfbuzz-Shaping.html" title="Shaping">Shaping</a>
+</dt>
+<dd></dd>
+<a name="idxT"></a><h3 class="title">T</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-common.html#hb-tag-to-string" title="hb_tag_to_string ()">hb_tag_to_string</a>, function in <a class="link" href="harfbuzz-hb-common.html" title="hb-common">hb-common</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-0-9-7.html b/docs/html/api-index-0-9-7.html
new file mode 100644
index 0000000..d948391
--- /dev/null
+++ b/docs/html/api-index-0-9-7.html
@@ -0,0 +1,195 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 0.9.7: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-0-9-5.html" title="Index of new symbols in 0.9.5">
+<link rel="next" href="api-index-0-9-8.html" title="Index of new symbols in 0.9.8">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxB">B</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxF">F</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxO">O</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxS">S</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-0-9-5.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-0-9-8.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-0-9-7"></a>Index of new symbols in 0.9.7</h2></div></div></div>
+<a name="idx"></a><a name="idxB"></a><h3 class="title">B</h3>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add" title="hb_buffer_add ()">hb_buffer_add</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-deserialize-glyphs" title="hb_buffer_deserialize_glyphs ()">hb_buffer_deserialize_glyphs</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-flags" title="hb_buffer_get_flags ()">hb_buffer_get_flags</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-segment-properties" title="hb_buffer_get_segment_properties ()">hb_buffer_get_segment_properties</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-guess-segment-properties" title="hb_buffer_guess_segment_properties ()">hb_buffer_guess_segment_properties</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-from-string" title="hb_buffer_serialize_format_from_string ()">hb_buffer_serialize_format_from_string</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-to-string" title="hb_buffer_serialize_format_to_string ()">hb_buffer_serialize_format_to_string</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-glyphs" title="hb_buffer_serialize_glyphs ()">hb_buffer_serialize_glyphs</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-list-formats" title="hb_buffer_serialize_list_formats ()">hb_buffer_serialize_list_formats</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-flags" title="hb_buffer_set_flags ()">hb_buffer_set_flags</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-segment-properties" title="hb_buffer_set_segment_properties ()">hb_buffer_set_segment_properties</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<a name="idxF"></a><h3 class="title">F</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-get-glyph-count" title="hb_face_get_glyph_count ()">hb_face_get_glyph_count</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-face.html#hb-face-set-glyph-count" title="hb_face_set_glyph_count ()">hb_face_set_glyph_count</a>, function in <a class="link" href="harfbuzz-hb-face.html" title="hb-face">hb-face</a>
+</dt>
+<dd></dd>
+<a name="idxO"></a><h3 class="title">O</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-feature-get-lookups" title="hb_ot_layout_feature_get_lookups ()">hb_ot_layout_feature_get_lookups</a>, function in <a class="link" href="harfbuzz-hb-ot-layout.html" title="hb-ot-layout">hb-ot-layout</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-get-glyphs-in-class" title="hb_ot_layout_get_glyphs_in_class ()">hb_ot_layout_get_glyphs_in_class</a>, function in <a class="link" href="harfbuzz-hb-ot-layout.html" title="hb-ot-layout">hb-ot-layout</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-get-glyph-class" title="hb_ot_layout_get_glyph_class ()">hb_ot_layout_get_glyph_class</a>, function in <a class="link" href="harfbuzz-hb-ot-layout.html" title="hb-ot-layout">hb-ot-layout</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-lookup-collect-glyphs" title="hb_ot_layout_lookup_collect_glyphs ()">hb_ot_layout_lookup_collect_glyphs</a>, function in <a class="link" href="harfbuzz-hb-ot-layout.html" title="hb-ot-layout">hb-ot-layout</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-lookup-substitute-closure" title="hb_ot_layout_lookup_substitute_closure ()">hb_ot_layout_lookup_substitute_closure</a>, function in <a class="link" href="harfbuzz-hb-ot-layout.html" title="hb-ot-layout">hb-ot-layout</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-lookup-would-substitute" title="hb_ot_layout_lookup_would_substitute ()">hb_ot_layout_lookup_would_substitute</a>, function in <a class="link" href="harfbuzz-hb-ot-layout.html" title="hb-ot-layout">hb-ot-layout</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-shape-plan-collect-lookups" title="hb_ot_shape_plan_collect_lookups ()">hb_ot_shape_plan_collect_lookups</a>, function in <a class="link" href="harfbuzz-hb-ot-layout.html" title="hb-ot-layout">hb-ot-layout</a>
+</dt>
+<dd></dd>
+<a name="idxS"></a><h3 class="title">S</h3>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-equal" title="hb_segment_properties_equal ()">hb_segment_properties_equal</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-hash" title="hb_segment_properties_hash ()">hb_segment_properties_hash</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-add-range" title="hb_set_add_range ()">hb_set_add_range</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-del-range" title="hb_set_del_range ()">hb_set_del_range</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-get-max" title="hb_set_get_max ()">hb_set_get_max</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-get-min" title="hb_set_get_min ()">hb_set_get_min</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-get-population" title="hb_set_get_population ()">hb_set_get_population</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-is-empty" title="hb_set_is_empty ()">hb_set_is_empty</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-is-equal" title="hb_set_is_equal ()">hb_set_is_equal</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-set.html#hb-set-next-range" title="hb_set_next_range ()">hb_set_next_range</a>, function in <a class="link" href="harfbuzz-hb-set.html" title="hb-set">hb-set</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-create" title="hb_shape_plan_create ()">hb_shape_plan_create</a>, function in <a class="link" href="harfbuzz-hb-shape-plan.html" title="hb-shape-plan">hb-shape-plan</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-create-cached" title="hb_shape_plan_create_cached ()">hb_shape_plan_create_cached</a>, function in <a class="link" href="harfbuzz-hb-shape-plan.html" title="hb-shape-plan">hb-shape-plan</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-destroy" title="hb_shape_plan_destroy ()">hb_shape_plan_destroy</a>, function in <a class="link" href="harfbuzz-hb-shape-plan.html" title="hb-shape-plan">hb-shape-plan</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-execute" title="hb_shape_plan_execute ()">hb_shape_plan_execute</a>, function in <a class="link" href="harfbuzz-hb-shape-plan.html" title="hb-shape-plan">hb-shape-plan</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-get-empty" title="hb_shape_plan_get_empty ()">hb_shape_plan_get_empty</a>, function in <a class="link" href="harfbuzz-hb-shape-plan.html" title="hb-shape-plan">hb-shape-plan</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-get-shaper" title="hb_shape_plan_get_shaper ()">hb_shape_plan_get_shaper</a>, function in <a class="link" href="harfbuzz-hb-shape-plan.html" title="hb-shape-plan">hb-shape-plan</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-get-user-data" title="hb_shape_plan_get_user_data ()">hb_shape_plan_get_user_data</a>, function in <a class="link" href="harfbuzz-hb-shape-plan.html" title="hb-shape-plan">hb-shape-plan</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-reference" title="hb_shape_plan_reference ()">hb_shape_plan_reference</a>, function in <a class="link" href="harfbuzz-hb-shape-plan.html" title="hb-shape-plan">hb-shape-plan</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-set-user-data" title="hb_shape_plan_set_user_data ()">hb_shape_plan_set_user_data</a>, function in <a class="link" href="harfbuzz-hb-shape-plan.html" title="hb-shape-plan">hb-shape-plan</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-0-9-8.html b/docs/html/api-index-0-9-8.html
new file mode 100644
index 0000000..13ef9b1
--- /dev/null
+++ b/docs/html/api-index-0-9-8.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 0.9.8: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-0-9-7.html" title="Index of new symbols in 0.9.7">
+<link rel="next" href="api-index-0-9-10.html" title="Index of new symbols in 0.9.10">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxO">O</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-0-9-7.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-0-9-10.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-0-9-8"></a>Index of new symbols in 0.9.8</h2></div></div></div>
+<a name="idx"></a><a name="idxO"></a><h3 class="title">O</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-collect-lookups" title="hb_ot_layout_collect_lookups ()">hb_ot_layout_collect_lookups</a>, function in <a class="link" href="harfbuzz-hb-ot-layout.html" title="hb-ot-layout">hb-ot-layout</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-1-0-5.html b/docs/html/api-index-1-0-5.html
new file mode 100644
index 0000000..243d7b8
--- /dev/null
+++ b/docs/html/api-index-1-0-5.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 1.0.5: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-0-9-42.html" title="Index of new symbols in 0.9.42">
+<link rel="next" href="api-index-1-1-2.html" title="Index of new symbols in 1.1.2">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxF">F</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-0-9-42.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-1-1-2.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-1-0-5"></a>Index of new symbols in 1.0.5</h2></div></div></div>
+<a name="idx"></a><a name="idxF"></a><h3 class="title">F</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-set-parent" title="hb_font_set_parent ()">hb_font_set_parent</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-ft.html#hb-ft-font-get-load-flags" title="hb_ft_font_get_load_flags ()">hb_ft_font_get_load_flags</a>, function in <a class="link" href="harfbuzz-hb-ft.html" title="hb-ft">hb-ft</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-ft.html#hb-ft-font-set-load-flags" title="hb_ft_font_set_load_flags ()">hb_ft_font_set_load_flags</a>, function in <a class="link" href="harfbuzz-hb-ft.html" title="hb-ft">hb-ft</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-1-1-2.html b/docs/html/api-index-1-1-2.html
new file mode 100644
index 0000000..2d8ba8a
--- /dev/null
+++ b/docs/html/api-index-1-1-2.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 1.1.2: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-1-0-5.html" title="Index of new symbols in 1.0.5">
+<link rel="next" href="api-index-1-1-3.html" title="Index of new symbols in 1.1.3">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxF">F</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-1-0-5.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-1-1-3.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-1-1-2"></a>Index of new symbols in 1.1.2</h2></div></div></div>
+<a name="idx"></a><a name="idxF"></a><h3 class="title">F</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-font-h-extents-func" title="hb_font_funcs_set_font_h_extents_func ()">hb_font_funcs_set_font_h_extents_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-font-v-extents-func" title="hb_font_funcs_set_font_v_extents_func ()">hb_font_funcs_set_font_v_extents_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/api-index-1-1-3.html b/docs/html/api-index-1-1-3.html
new file mode 100644
index 0000000..545ed99
--- /dev/null
+++ b/docs/html/api-index-1-1-3.html
@@ -0,0 +1,49 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index of new symbols in 1.1.3: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-1-1-2.html" title="Index of new symbols in 1.1.2">
+<link rel="next" href="deprecated-api-index.html" title="Index of deprecated API">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxB">B</a>
+  <span class="dim">|</span> 
+ <a class="shortcut" href="#idxF">F</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-1-1-2.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="deprecated-api-index.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="index">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="api-index-1-1-3"></a>Index of new symbols in 1.1.3</h2></div></div></div>
+<a name="idx"></a><a name="idxB"></a><h3 class="title">B</h3>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-message-func" title="hb_buffer_set_message_func ()">hb_buffer_set_message_func</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<a name="idxF"></a><h3 class="title">F</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-extents-for-direction" title="hb_font_get_extents_for_direction ()">hb_font_get_extents_for_direction</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-h-extents" title="hb_font_get_h_extents ()">hb_font_get_h_extents</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-v-extents" title="hb_font_get_v_extents ()">hb_font_get_v_extents</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/reference/html/api-index-full.html b/docs/html/api-index-full.html
index bb4c5a0..b82641b 100644
--- a/docs/reference/html/api-index-full.html
+++ b/docs/html/api-index-full.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>API Index</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="index.html" title="HarfBuzz Reference Manual">
+<title>API Index: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
<link rel="prev" href="object-tree.html" title="Object Hierarchy">
-<link rel="next" href="deprecated-api-index.html" title="Index of deprecated API">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<link rel="next" href="api-index-0-9-2.html" title="Index of new symbols in 0.9.2">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -43,9 +43,9 @@
 <span class="dim">|</span> 
<a class="shortcut" href="#idxV">V</a></span></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="object-tree.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="deprecated-api-index.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<td><a accesskey="n" href="api-index-0-9-2.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="index">
<div class="titlepage"><div><div><h2 class="title">
@@ -108,47 +108,55 @@
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-add" title="hb_buffer_add ()">hb_buffer_add</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add" title="hb_buffer_add ()">hb_buffer_add</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-add-codepoints" title="hb_buffer_add_codepoints ()">hb_buffer_add_codepoints</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-codepoints" title="hb_buffer_add_codepoints ()">hb_buffer_add_codepoints</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-add-utf16" title="hb_buffer_add_utf16 ()">hb_buffer_add_utf16</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-latin1" title="hb_buffer_add_latin1 ()">hb_buffer_add_latin1</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-add-utf32" title="hb_buffer_add_utf32 ()">hb_buffer_add_utf32</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-utf16" title="hb_buffer_add_utf16 ()">hb_buffer_add_utf16</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-add-utf8" title="hb_buffer_add_utf8 ()">hb_buffer_add_utf8</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-utf32" title="hb_buffer_add_utf32 ()">hb_buffer_add_utf32</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-allocation-successful" title="hb_buffer_allocation_successful ()">hb_buffer_allocation_successful</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-utf8" title="hb_buffer_add_utf8 ()">hb_buffer_add_utf8</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-clear-contents" title="hb_buffer_clear_contents ()">hb_buffer_clear_contents</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-allocation-successful" title="hb_buffer_allocation_successful ()">hb_buffer_allocation_successful</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-content-type-t" title="enum hb_buffer_content_type_t">hb_buffer_content_type_t</a>, enum in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-clear-contents" title="hb_buffer_clear_contents ()">hb_buffer_clear_contents</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-create" title="hb_buffer_create ()">hb_buffer_create</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-cluster-level-t" title="enum hb_buffer_cluster_level_t">hb_buffer_cluster_level_t</a>, enum in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-deserialize-glyphs" title="hb_buffer_deserialize_glyphs ()">hb_buffer_deserialize_glyphs</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-content-type-t" title="enum hb_buffer_content_type_t">hb_buffer_content_type_t</a>, enum in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-destroy" title="hb_buffer_destroy ()">hb_buffer_destroy</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-create" title="hb_buffer_create ()">hb_buffer_create</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-deserialize-glyphs" title="hb_buffer_deserialize_glyphs ()">hb_buffer_deserialize_glyphs</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-destroy" title="hb_buffer_destroy ()">hb_buffer_destroy</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
@@ -156,87 +164,103 @@
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-flags-t" title="enum hb_buffer_flags_t">hb_buffer_flags_t</a>, enum in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-flags-t" title="enum hb_buffer_flags_t">hb_buffer_flags_t</a>, enum in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-cluster-level" title="hb_buffer_get_cluster_level ()">hb_buffer_get_cluster_level</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-content-type" title="hb_buffer_get_content_type ()">hb_buffer_get_content_type</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-direction" title="hb_buffer_get_direction ()">hb_buffer_get_direction</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-content-type" title="hb_buffer_get_content_type ()">hb_buffer_get_content_type</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-empty" title="hb_buffer_get_empty ()">hb_buffer_get_empty</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-direction" title="hb_buffer_get_direction ()">hb_buffer_get_direction</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-flags" title="hb_buffer_get_flags ()">hb_buffer_get_flags</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-empty" title="hb_buffer_get_empty ()">hb_buffer_get_empty</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-glyph-infos" title="hb_buffer_get_glyph_infos ()">hb_buffer_get_glyph_infos</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-flags" title="hb_buffer_get_flags ()">hb_buffer_get_flags</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-glyph-positions" title="hb_buffer_get_glyph_positions ()">hb_buffer_get_glyph_positions</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-glyph-infos" title="hb_buffer_get_glyph_infos ()">hb_buffer_get_glyph_infos</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-language" title="hb_buffer_get_language ()">hb_buffer_get_language</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-glyph-positions" title="hb_buffer_get_glyph_positions ()">hb_buffer_get_glyph_positions</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-length" title="hb_buffer_get_length ()">hb_buffer_get_length</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-language" title="hb_buffer_get_language ()">hb_buffer_get_language</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-replacement-codepoint" title="hb_buffer_get_replacement_codepoint ()">hb_buffer_get_replacement_codepoint</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-length" title="hb_buffer_get_length ()">hb_buffer_get_length</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-script" title="hb_buffer_get_script ()">hb_buffer_get_script</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-replacement-codepoint" title="hb_buffer_get_replacement_codepoint ()">hb_buffer_get_replacement_codepoint</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-segment-properties" title="hb_buffer_get_segment_properties ()">hb_buffer_get_segment_properties</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-script" title="hb_buffer_get_script ()">hb_buffer_get_script</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-unicode-funcs" title="hb_buffer_get_unicode_funcs ()">hb_buffer_get_unicode_funcs</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-segment-properties" title="hb_buffer_get_segment_properties ()">hb_buffer_get_segment_properties</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-user-data" title="hb_buffer_get_user_data ()">hb_buffer_get_user_data</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-unicode-funcs" title="hb_buffer_get_unicode_funcs ()">hb_buffer_get_unicode_funcs</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-guess-segment-properties" title="hb_buffer_guess_segment_properties ()">hb_buffer_guess_segment_properties</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-user-data" title="hb_buffer_get_user_data ()">hb_buffer_get_user_data</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-message-func-t" title="hb_buffer_message_func_t ()">hb_buffer_message_func_t</a>, user_function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-guess-segment-properties" title="hb_buffer_guess_segment_properties ()">hb_buffer_guess_segment_properties</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-normalize-glyphs" title="hb_buffer_normalize_glyphs ()">hb_buffer_normalize_glyphs</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-normalize-glyphs" title="hb_buffer_normalize_glyphs ()">hb_buffer_normalize_glyphs</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-pre-allocate" title="hb_buffer_pre_allocate ()">hb_buffer_pre_allocate</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-pre-allocate" title="hb_buffer_pre_allocate ()">hb_buffer_pre_allocate</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-reference" title="hb_buffer_reference ()">hb_buffer_reference</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-reference" title="hb_buffer_reference ()">hb_buffer_reference</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#HB-BUFFER-REPLACEMENT-CODEPOINT-DEFAULT:CAPS" title="HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT">HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT</a>, macro in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-reset" title="hb_buffer_reset ()">hb_buffer_reset</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-reset" title="hb_buffer_reset ()">hb_buffer_reset</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-reverse" title="hb_buffer_reverse ()">hb_buffer_reverse</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-reverse" title="hb_buffer_reverse ()">hb_buffer_reverse</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-reverse-clusters" title="hb_buffer_reverse_clusters ()">hb_buffer_reverse_clusters</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-reverse-clusters" title="hb_buffer_reverse_clusters ()">hb_buffer_reverse_clusters</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-reverse-range" title="hb_buffer_reverse_range ()">hb_buffer_reverse_range</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
@@ -244,71 +268,79 @@
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-flags-t" title="enum hb_buffer_serialize_flags_t">hb_buffer_serialize_flags_t</a>, enum in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-flags-t" title="enum hb_buffer_serialize_flags_t">hb_buffer_serialize_flags_t</a>, enum in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-from-string" title="hb_buffer_serialize_format_from_string ()">hb_buffer_serialize_format_from_string</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t">hb_buffer_serialize_format_t</a>, enum in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-format-from-string" title="hb_buffer_serialize_format_from_string ()">hb_buffer_serialize_format_from_string</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-to-string" title="hb_buffer_serialize_format_to_string ()">hb_buffer_serialize_format_to_string</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t">hb_buffer_serialize_format_t</a>, enum in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-glyphs" title="hb_buffer_serialize_glyphs ()">hb_buffer_serialize_glyphs</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-format-to-string" title="hb_buffer_serialize_format_to_string ()">hb_buffer_serialize_format_to_string</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-list-formats" title="hb_buffer_serialize_list_formats ()">hb_buffer_serialize_list_formats</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-glyphs" title="hb_buffer_serialize_glyphs ()">hb_buffer_serialize_glyphs</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-cluster-level" title="hb_buffer_set_cluster_level ()">hb_buffer_set_cluster_level</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-list-formats" title="hb_buffer_serialize_list_formats ()">hb_buffer_serialize_list_formats</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-content-type" title="hb_buffer_set_content_type ()">hb_buffer_set_content_type</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-content-type" title="hb_buffer_set_content_type ()">hb_buffer_set_content_type</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-direction" title="hb_buffer_set_direction ()">hb_buffer_set_direction</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-direction" title="hb_buffer_set_direction ()">hb_buffer_set_direction</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-flags" title="hb_buffer_set_flags ()">hb_buffer_set_flags</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-flags" title="hb_buffer_set_flags ()">hb_buffer_set_flags</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-language" title="hb_buffer_set_language ()">hb_buffer_set_language</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-language" title="hb_buffer_set_language ()">hb_buffer_set_language</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-length" title="hb_buffer_set_length ()">hb_buffer_set_length</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-length" title="hb_buffer_set_length ()">hb_buffer_set_length</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-message-func" title="hb_buffer_set_message_func ()">hb_buffer_set_message_func</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-replacement-codepoint" title="hb_buffer_set_replacement_codepoint ()">hb_buffer_set_replacement_codepoint</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-replacement-codepoint" title="hb_buffer_set_replacement_codepoint ()">hb_buffer_set_replacement_codepoint</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-script" title="hb_buffer_set_script ()">hb_buffer_set_script</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-script" title="hb_buffer_set_script ()">hb_buffer_set_script</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-segment-properties" title="hb_buffer_set_segment_properties ()">hb_buffer_set_segment_properties</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-segment-properties" title="hb_buffer_set_segment_properties ()">hb_buffer_set_segment_properties</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-unicode-funcs" title="hb_buffer_set_unicode_funcs ()">hb_buffer_set_unicode_funcs</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-unicode-funcs" title="hb_buffer_set_unicode_funcs ()">hb_buffer_set_unicode_funcs</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-user-data" title="hb_buffer_set_user_data ()">hb_buffer_set_user_data</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-user-data" title="hb_buffer_set_user_data ()">hb_buffer_set_user_data</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t">hb_buffer_t</a>, typedef in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-t">hb_buffer_t</a>, typedef in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<a name="idxC"></a><h3 class="title">C</h3>
@@ -451,15 +483,15 @@
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-shape.html#hb-feature-from-string" title="hb_feature_from_string ()">hb_feature_from_string</a>, function in <a class="link" href="harfbuzz-hb-shape.html" title="hb-shape">hb-shape</a>
+<a class="link" href="harfbuzz-Shaping.html#hb-feature-from-string" title="hb_feature_from_string ()">hb_feature_from_string</a>, function in <a class="link" href="harfbuzz-Shaping.html" title="Shaping">Shaping</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-shape.html#hb-feature-t-struct" title="hb_feature_t">hb_feature_t</a>, struct in <a class="link" href="harfbuzz-hb-shape.html" title="hb-shape">hb-shape</a>
+<a class="link" href="harfbuzz-Shaping.html#hb-feature-t-struct" title="hb_feature_t">hb_feature_t</a>, struct in <a class="link" href="harfbuzz-Shaping.html" title="Shaping">Shaping</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-shape.html#hb-feature-to-string" title="hb_feature_to_string ()">hb_feature_to_string</a>, function in <a class="link" href="harfbuzz-hb-shape.html" title="hb-shape">hb-shape</a>
+<a class="link" href="harfbuzz-Shaping.html#hb-feature-to-string" title="hb_feature_to_string ()">hb_feature_to_string</a>, function in <a class="link" href="harfbuzz-Shaping.html" title="Shaping">Shaping</a>
</dt>
<dd></dd>
<dt>
@@ -507,6 +539,14 @@
</dt>
<dd></dd>
<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-font-h-extents-func" title="hb_font_funcs_set_font_h_extents_func ()">hb_font_funcs_set_font_h_extents_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-font-v-extents-func" title="hb_font_funcs_set_font_v_extents_func ()">hb_font_funcs_set_font_v_extents_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-contour-point-func" title="hb_font_funcs_set_glyph_contour_point_func ()">hb_font_funcs_set_glyph_contour_point_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
</dt>
<dd></dd>
@@ -563,10 +603,26 @@
</dt>
<dd></dd>
<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-extents-for-direction" title="hb_font_get_extents_for_direction ()">hb_font_get_extents_for_direction</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="harfbuzz-hb-font.html#hb-font-get-face" title="hb_font_get_face ()">hb_font_get_face</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
</dt>
<dd></dd>
<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-font-extents-func-t" title="hb_font_get_font_extents_func_t ()">hb_font_get_font_extents_func_t</a>, user_function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-font-h-extents-func-t" title="hb_font_get_font_h_extents_func_t">hb_font_get_font_h_extents_func_t</a>, typedef in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-font-v-extents-func-t" title="hb_font_get_font_v_extents_func_t">hb_font_get_font_v_extents_func_t</a>, typedef in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph" title="hb_font_get_glyph ()">hb_font_get_glyph</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
</dt>
<dd></dd>
@@ -687,6 +743,10 @@
</dt>
<dd></dd>
<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-h-extents" title="hb_font_get_h_extents ()">hb_font_get_h_extents</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="harfbuzz-hb-font.html#hb-font-get-parent" title="hb_font_get_parent ()">hb_font_get_parent</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
</dt>
<dd></dd>
@@ -703,6 +763,10 @@
</dt>
<dd></dd>
<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-v-extents" title="hb_font_get_v_extents ()">hb_font_get_v_extents</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="harfbuzz-hb-font.html#hb-font-glyph-from-string" title="hb_font_glyph_from_string ()">hb_font_glyph_from_string</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
</dt>
<dd></dd>
@@ -731,6 +795,10 @@
</dt>
<dd></dd>
<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-set-parent" title="hb_font_set_parent ()">hb_font_set_parent</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="harfbuzz-hb-font.html#hb-font-set-ppem" title="hb_font_set_ppem ()">hb_font_set_ppem</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
</dt>
<dd></dd>
@@ -759,19 +827,39 @@
</dt>
<dd></dd>
<dt>
+<a class="link" href="harfbuzz-hb-ft.html#hb-ft-face-create-referenced" title="hb_ft_face_create_referenced ()">hb_ft_face_create_referenced</a>, function in <a class="link" href="harfbuzz-hb-ft.html" title="hb-ft">hb-ft</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="harfbuzz-hb-ft.html#hb-ft-font-create" title="hb_ft_font_create ()">hb_ft_font_create</a>, function in <a class="link" href="harfbuzz-hb-ft.html" title="hb-ft">hb-ft</a>
</dt>
<dd></dd>
<dt>
+<a class="link" href="harfbuzz-hb-ft.html#hb-ft-font-create-referenced" title="hb_ft_font_create_referenced ()">hb_ft_font_create_referenced</a>, function in <a class="link" href="harfbuzz-hb-ft.html" title="hb-ft">hb-ft</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="harfbuzz-hb-ft.html#hb-ft-font-get-face" title="hb_ft_font_get_face ()">hb_ft_font_get_face</a>, function in <a class="link" href="harfbuzz-hb-ft.html" title="hb-ft">hb-ft</a>
</dt>
<dd></dd>
<dt>
+<a class="link" href="harfbuzz-hb-ft.html#hb-ft-font-get-load-flags" title="hb_ft_font_get_load_flags ()">hb_ft_font_get_load_flags</a>, function in <a class="link" href="harfbuzz-hb-ft.html" title="hb-ft">hb-ft</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="harfbuzz-hb-ft.html#hb-ft-font-set-funcs" title="hb_ft_font_set_funcs ()">hb_ft_font_set_funcs</a>, function in <a class="link" href="harfbuzz-hb-ft.html" title="hb-ft">hb-ft</a>
</dt>
<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-ft.html#hb-ft-font-set-load-flags" title="hb_ft_font_set_load_flags ()">hb_ft_font_set_load_flags</a>, function in <a class="link" href="harfbuzz-hb-ft.html" title="hb-ft">hb-ft</a>
+</dt>
+<dd></dd>
<a name="idxG"></a><h3 class="title">G</h3>
<dt>
+<a class="link" href="harfbuzz-hb-glib.html#hb-glib-blob-create" title="hb_glib_blob_create ()">hb_glib_blob_create</a>, function in <a class="link" href="harfbuzz-hb-glib.html" title="hb-glib">hb-glib</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="harfbuzz-hb-glib.html#hb-glib-get-unicode-funcs" title="hb_glib_get_unicode_funcs ()">hb_glib_get_unicode_funcs</a>, function in <a class="link" href="harfbuzz-hb-glib.html" title="hb-glib">hb-glib</a>
</dt>
<dd></dd>
@@ -784,11 +872,203 @@
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-glyph-info-t-struct" title="hb_glyph_info_t">hb_glyph_info_t</a>, struct in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-glyph-info-t-struct" title="hb_glyph_info_t">hb_glyph_info_t</a>, struct in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-Buffers.html#hb-glyph-position-t-struct" title="hb_glyph_position_t">hb_glyph_position_t</a>, struct in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-blob-get-type" title="hb_gobject_blob_get_type ()">hb_gobject_blob_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-buffer-cluster-level-get-type" title="hb_gobject_buffer_cluster_level_get_type ()">hb_gobject_buffer_cluster_level_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-buffer-content-type-get-type" title="hb_gobject_buffer_content_type_get_type ()">hb_gobject_buffer_content_type_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-buffer-flags-get-type" title="hb_gobject_buffer_flags_get_type ()">hb_gobject_buffer_flags_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-buffer-get-type" title="hb_gobject_buffer_get_type ()">hb_gobject_buffer_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-buffer-serialize-flags-get-type" title="hb_gobject_buffer_serialize_flags_get_type ()">hb_gobject_buffer_serialize_flags_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-buffer-serialize-format-get-type" title="hb_gobject_buffer_serialize_format_get_type ()">hb_gobject_buffer_serialize_format_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-direction-get-type" title="hb_gobject_direction_get_type ()">hb_gobject_direction_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-face-get-type" title="hb_gobject_face_get_type ()">hb_gobject_face_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-feature-get-type" title="hb_gobject_feature_get_type ()">hb_gobject_feature_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-glyph-position-t-struct" title="hb_glyph_position_t">hb_glyph_position_t</a>, struct in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-font-funcs-get-type" title="hb_gobject_font_funcs_get_type ()">hb_gobject_font_funcs_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-font-get-type" title="hb_gobject_font_get_type ()">hb_gobject_font_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-glyph-info-get-type" title="hb_gobject_glyph_info_get_type ()">hb_gobject_glyph_info_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-glyph-position-get-type" title="hb_gobject_glyph_position_get_type ()">hb_gobject_glyph_position_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-memory-mode-get-type" title="hb_gobject_memory_mode_get_type ()">hb_gobject_memory_mode_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-ot-layout-glyph-class-get-type" title="hb_gobject_ot_layout_glyph_class_get_type ()">hb_gobject_ot_layout_glyph_class_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-script-get-type" title="hb_gobject_script_get_type ()">hb_gobject_script_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-segment-properties-get-type" title="hb_gobject_segment_properties_get_type ()">hb_gobject_segment_properties_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-set-get-type" title="hb_gobject_set_get_type ()">hb_gobject_set_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-shape-plan-get-type" title="hb_gobject_shape_plan_get_type ()">hb_gobject_shape_plan_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BLOB:CAPS" title="HB_GOBJECT_TYPE_BLOB">HB_GOBJECT_TYPE_BLOB</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER:CAPS" title="HB_GOBJECT_TYPE_BUFFER">HB_GOBJECT_TYPE_BUFFER</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER-CLUSTER-LEVEL:CAPS" title="HB_GOBJECT_TYPE_BUFFER_CLUSTER_LEVEL">HB_GOBJECT_TYPE_BUFFER_CLUSTER_LEVEL</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER-CONTENT-TYPE:CAPS" title="HB_GOBJECT_TYPE_BUFFER_CONTENT_TYPE">HB_GOBJECT_TYPE_BUFFER_CONTENT_TYPE</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER-FLAGS:CAPS" title="HB_GOBJECT_TYPE_BUFFER_FLAGS">HB_GOBJECT_TYPE_BUFFER_FLAGS</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER-SERIALIZE-FLAGS:CAPS" title="HB_GOBJECT_TYPE_BUFFER_SERIALIZE_FLAGS">HB_GOBJECT_TYPE_BUFFER_SERIALIZE_FLAGS</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER-SERIALIZE-FORMAT:CAPS" title="HB_GOBJECT_TYPE_BUFFER_SERIALIZE_FORMAT">HB_GOBJECT_TYPE_BUFFER_SERIALIZE_FORMAT</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-DIRECTION:CAPS" title="HB_GOBJECT_TYPE_DIRECTION">HB_GOBJECT_TYPE_DIRECTION</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-FACE:CAPS" title="HB_GOBJECT_TYPE_FACE">HB_GOBJECT_TYPE_FACE</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-FEATURE:CAPS" title="HB_GOBJECT_TYPE_FEATURE">HB_GOBJECT_TYPE_FEATURE</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-FONT:CAPS" title="HB_GOBJECT_TYPE_FONT">HB_GOBJECT_TYPE_FONT</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-FONT-FUNCS:CAPS" title="HB_GOBJECT_TYPE_FONT_FUNCS">HB_GOBJECT_TYPE_FONT_FUNCS</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-GLYPH-INFO:CAPS" title="HB_GOBJECT_TYPE_GLYPH_INFO">HB_GOBJECT_TYPE_GLYPH_INFO</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-GLYPH-POSITION:CAPS" title="HB_GOBJECT_TYPE_GLYPH_POSITION">HB_GOBJECT_TYPE_GLYPH_POSITION</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-MEMORY-MODE:CAPS" title="HB_GOBJECT_TYPE_MEMORY_MODE">HB_GOBJECT_TYPE_MEMORY_MODE</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-OT-LAYOUT-GLYPH-CLASS:CAPS" title="HB_GOBJECT_TYPE_OT_LAYOUT_GLYPH_CLASS">HB_GOBJECT_TYPE_OT_LAYOUT_GLYPH_CLASS</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-SCRIPT:CAPS" title="HB_GOBJECT_TYPE_SCRIPT">HB_GOBJECT_TYPE_SCRIPT</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-SEGMENT-PROPERTIES:CAPS" title="HB_GOBJECT_TYPE_SEGMENT_PROPERTIES">HB_GOBJECT_TYPE_SEGMENT_PROPERTIES</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-SET:CAPS" title="HB_GOBJECT_TYPE_SET">HB_GOBJECT_TYPE_SET</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-SHAPE-PLAN:CAPS" title="HB_GOBJECT_TYPE_SHAPE_PLAN">HB_GOBJECT_TYPE_SHAPE_PLAN</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-UNICODE-COMBINING-CLASS:CAPS" title="HB_GOBJECT_TYPE_UNICODE_COMBINING_CLASS">HB_GOBJECT_TYPE_UNICODE_COMBINING_CLASS</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-UNICODE-FUNCS:CAPS" title="HB_GOBJECT_TYPE_UNICODE_FUNCS">HB_GOBJECT_TYPE_UNICODE_FUNCS</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-UNICODE-GENERAL-CATEGORY:CAPS" title="HB_GOBJECT_TYPE_UNICODE_GENERAL_CATEGORY">HB_GOBJECT_TYPE_UNICODE_GENERAL_CATEGORY</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-USER-DATA-KEY:CAPS" title="HB_GOBJECT_TYPE_USER_DATA_KEY">HB_GOBJECT_TYPE_USER_DATA_KEY</a>, macro in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-unicode-combining-class-get-type" title="hb_gobject_unicode_combining_class_get_type ()">hb_gobject_unicode_combining_class_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-unicode-funcs-get-type" title="hb_gobject_unicode_funcs_get_type ()">hb_gobject_unicode_funcs_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-unicode-general-category-get-type" title="hb_gobject_unicode_general_category_get_type ()">hb_gobject_unicode_general_category_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-user-data-key-get-type" title="hb_gobject_user_data_key_get_type ()">hb_gobject_user_data_key_get_type</a>, function in <a class="link" href="harfbuzz-hb-gobject.html" title="hb-gobject">hb-gobject</a>
</dt>
<dd></dd>
<dt>
@@ -830,7 +1110,7 @@
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-common.html#hb-language-t">hb_language_t</a>, typedef in <a class="link" href="harfbuzz-hb-common.html" title="hb-common">hb-common</a>
+<a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t">hb_language_t</a>, typedef in <a class="link" href="harfbuzz-hb-common.html" title="hb-common">hb-common</a>
</dt>
<dd></dd>
<dt>
@@ -848,7 +1128,7 @@
<dd></dd>
<a name="idxO"></a><h3 class="title">O</h3>
<dt>
-hb_ot_font_set_funcs, function in hb-ot-font
+<a class="link" href="harfbuzz-hb-ot-font.html#hb-ot-font-set-funcs" title="hb_ot_font_set_funcs ()">hb_ot_font_set_funcs</a>, function in <a class="link" href="harfbuzz-hb-ot-font.html" title="hb-ot-font">hb-ot-font</a>
</dt>
<dd></dd>
<dt>
@@ -920,6 +1200,10 @@ hb_ot_font_set_funcs, function in hb-ot-font
</dt>
<dd></dd>
<dt>
+<a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-language-get-required-feature-index" title="hb_ot_layout_language_get_required_feature_index ()">hb_ot_layout_language_get_required_feature_index</a>, function in <a class="link" href="harfbuzz-hb-ot-layout.html" title="hb-ot-layout">hb-ot-layout</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-lookup-collect-glyphs" title="hb_ot_layout_lookup_collect_glyphs ()">hb_ot_layout_lookup_collect_glyphs</a>, function in <a class="link" href="harfbuzz-hb-ot-layout.html" title="hb-ot-layout">hb-ot-layout</a>
</dt>
<dd></dd>
@@ -968,7 +1252,7 @@ hb_ot_font_set_funcs, function in hb-ot-font
</dt>
<dd></dd>
<dt>
-hb_ot_shape_glyphs_closure, function in hb-ot-shape
+<a class="link" href="harfbuzz-hb-ot-shape.html#hb-ot-shape-glyphs-closure" title="hb_ot_shape_glyphs_closure ()">hb_ot_shape_glyphs_closure</a>, function in <a class="link" href="harfbuzz-hb-ot-shape.html" title="hb-ot-shape">hb-ot-shape</a>
</dt>
<dd></dd>
<dt>
@@ -1004,6 +1288,10 @@ hb_ot_shape_glyphs_closure, function in hb-ot-shape
</dt>
<dd></dd>
<dt>
+<a class="link" href="harfbuzz-hb-ot-layout.html#HB-OT-TAG-JSTF:CAPS" title="HB_OT_TAG_JSTF">HB_OT_TAG_JSTF</a>, macro in <a class="link" href="harfbuzz-hb-ot-layout.html" title="hb-ot-layout">hb-ot-layout</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="harfbuzz-hb-ot-tag.html#hb-ot-tag-to-language" title="hb_ot_tag_to_language ()">hb_ot_tag_to_language</a>, function in <a class="link" href="harfbuzz-hb-ot-tag.html" title="hb-ot-tag">hb-ot-tag</a>
</dt>
<dd></dd>
@@ -1047,19 +1335,19 @@ hb_ot_shape_glyphs_closure, function in hb-ot-shape
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#HB-SEGMENT-PROPERTIES-DEFAULT:CAPS" title="HB_SEGMENT_PROPERTIES_DEFAULT">HB_SEGMENT_PROPERTIES_DEFAULT</a>, macro in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#HB-SEGMENT-PROPERTIES-DEFAULT:CAPS" title="HB_SEGMENT_PROPERTIES_DEFAULT">HB_SEGMENT_PROPERTIES_DEFAULT</a>, macro in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-segment-properties-equal" title="hb_segment_properties_equal ()">hb_segment_properties_equal</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-equal" title="hb_segment_properties_equal ()">hb_segment_properties_equal</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-segment-properties-hash" title="hb_segment_properties_hash ()">hb_segment_properties_hash</a>, function in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-hash" title="hb_segment_properties_hash ()">hb_segment_properties_hash</a>, function in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-buffer.html#hb-segment-properties-t-struct" title="hb_segment_properties_t">hb_segment_properties_t</a>, struct in <a class="link" href="harfbuzz-hb-buffer.html" title="hb-buffer">hb-buffer</a>
+<a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t-struct" title="hb_segment_properties_t">hb_segment_properties_t</a>, struct in <a class="link" href="harfbuzz-Buffers.html" title="Buffers">Buffers</a>
</dt>
<dd></dd>
<dt>
@@ -1175,15 +1463,15 @@ hb_ot_shape_glyphs_closure, function in hb-ot-shape
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-shape.html#hb-shape" title="hb_shape ()">hb_shape</a>, function in <a class="link" href="harfbuzz-hb-shape.html" title="hb-shape">hb-shape</a>
+<a class="link" href="harfbuzz-Shaping.html#hb-shape" title="hb_shape ()">hb_shape</a>, function in <a class="link" href="harfbuzz-Shaping.html" title="Shaping">Shaping</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-shape.html#hb-shape-full" title="hb_shape_full ()">hb_shape_full</a>, function in <a class="link" href="harfbuzz-hb-shape.html" title="hb-shape">hb-shape</a>
+<a class="link" href="harfbuzz-Shaping.html#hb-shape-full" title="hb_shape_full ()">hb_shape_full</a>, function in <a class="link" href="harfbuzz-Shaping.html" title="Shaping">Shaping</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="harfbuzz-hb-shape.html#hb-shape-list-shapers" title="hb_shape_list_shapers ()">hb_shape_list_shapers</a>, function in <a class="link" href="harfbuzz-hb-shape.html" title="hb-shape">hb-shape</a>
+<a class="link" href="harfbuzz-Shaping.html#hb-shape-list-shapers" title="hb_shape_list_shapers ()">hb_shape_list_shapers</a>, function in <a class="link" href="harfbuzz-Shaping.html" title="Shaping">Shaping</a>
</dt>
<dd></dd>
<dt>
@@ -1240,6 +1528,10 @@ hb_ot_shape_glyphs_closure, function in hb-ot-shape
</dt>
<dd></dd>
<dt>
+<a class="link" href="harfbuzz-hb-common.html#HB-TAG-MAX-SIGNED:CAPS" title="HB_TAG_MAX_SIGNED">HB_TAG_MAX_SIGNED</a>, macro in <a class="link" href="harfbuzz-hb-common.html" title="hb-common">hb-common</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="harfbuzz-hb-common.html#HB-TAG-NONE:CAPS" title="HB_TAG_NONE">HB_TAG_NONE</a>, macro in <a class="link" href="harfbuzz-hb-common.html" title="hb-common">hb-common</a>
</dt>
<dd></dd>
@@ -1422,6 +1714,14 @@ hb_ot_shape_glyphs_closure, function in hb-ot-shape
</dt>
<dd></dd>
<dt>
+<a class="link" href="harfbuzz-hb-version.html#HB-VERSION-ATLEAST:CAPS" title="HB_VERSION_ATLEAST()">HB_VERSION_ATLEAST</a>, macro in <a class="link" href="harfbuzz-hb-version.html" title="hb-version">hb-version</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-version.html#hb-version-atleast" title="hb_version_atleast ()">hb_version_atleast</a>, function in <a class="link" href="harfbuzz-hb-version.html" title="hb-version">hb-version</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="harfbuzz-hb-version.html#HB-VERSION-MAJOR:CAPS" title="HB_VERSION_MAJOR">HB_VERSION_MAJOR</a>, macro in <a class="link" href="harfbuzz-hb-version.html" title="hb-version">hb-version</a>
</dt>
<dd></dd>
@@ -1443,7 +1743,6 @@ hb_ot_shape_glyphs_closure, function in hb-ot-shape
<dd></dd>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/html/buffers-language-script-and-direction.html b/docs/html/buffers-language-script-and-direction.html
new file mode 100644
index 0000000..5447496
--- /dev/null
+++ b/docs/html/buffers-language-script-and-direction.html
@@ -0,0 +1,87 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Buffers, language, script and direction: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt01.html" title="Part I. User's manual">
+<link rel="prev" href="hello-harfbuzz.html" title="Hello, Harfbuzz">
+<link rel="next" href="adding-text-to-the-buffer.html" title="Adding text to the buffer">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="hello-harfbuzz.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="adding-text-to-the-buffer.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="buffers-language-script-and-direction"></a>Buffers, language, script and direction</h2></div></div></div>
+<div class="toc"><dl class="toc">
+<dt><span class="section"><a href="buffers-language-script-and-direction.html#creating-and-destroying-buffers">Creating and destroying buffers</a></span></dt>
+<dt><span class="section"><a href="adding-text-to-the-buffer.html">Adding text to the buffer</a></span></dt>
+<dt><span class="section"><a href="setting-buffer-properties.html">Setting buffer properties</a></span></dt>
+<dt><span class="section"><a href="what-about-the-other-scripts.html">What about the other scripts?</a></span></dt>
+<dt><span class="section"><a href="customizing-unicode-functions.html">Customizing Unicode functions</a></span></dt>
+</dl></div>
+<p>
+ The input to Harfbuzz is a series of Unicode characters, stored in a
+ buffer. In this chapter, we'll look at how to set up a buffer with
+ the text that we want and then customize the properties of the
+ buffer.
+ </p>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="creating-and-destroying-buffers"></a>Creating and destroying buffers</h2></div></div></div>
+<p>
+ As we saw in our initial example, a buffer is created and
+ initialized with <code class="literal">hb_buffer_create()</code>. This
+ produces a new, empty buffer object, instantiated with some
+ default values and ready to accept your Unicode strings.
+ </p>
+<p>
+ Harfbuzz manages the memory of objects that it creates (such as
+ buffers), so you don't have to. When you have finished working on
+ a buffer, you can call <code class="literal">hb_buffer_destroy()</code>:
+ </p>
+<pre class="programlisting">
+ hb_buffer_t *buffer = hb_buffer_create();
+ ...
+ hb_buffer_destroy(buffer);
+</pre>
+<p>
+ This will destroy the object and free its associated memory -
+ unless some other part of the program holds a reference to this
+ buffer. If you acquire a Harfbuzz buffer from another subsystem
+ and want to ensure that it is not garbage collected by someone
+ else destroying it, you should increase its reference count:
+ </p>
+<pre class="programlisting">
+void somefunc(hb_buffer_t *buffer) {
+ buffer = hb_buffer_reference(buffer);
+ ...
+</pre>
+<p>
+ And then decrease it once you're done with it:
+ </p>
+<pre class="programlisting">
+ hb_buffer_destroy(buffer);
+}
+</pre>
+<p>
+ To throw away all the data in your buffer and start from scratch,
+ call <code class="literal">hb_buffer_reset(buffer)</code>. If you want to
+ throw away the string in the buffer but keep the options, you can
+ instead call <code class="literal">hb_buffer_clear_contents(buffer)</code>.
+ </p>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/building.html b/docs/html/building.html
new file mode 100644
index 0000000..0351b6c
--- /dev/null
+++ b/docs/html/building.html
@@ -0,0 +1,80 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Building: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="install-harfbuzz.html" title="Install Harfbuzz">
+<link rel="prev" href="install-harfbuzz.html" title="Install Harfbuzz">
+<link rel="next" href="hello-harfbuzz.html" title="Hello, Harfbuzz">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="install-harfbuzz.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="install-harfbuzz.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="hello-harfbuzz.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="building"></a>Building</h2></div></div></div>
+<p>
+ On Linux, install the development packages for FreeType, Cairo, and GLib.
+ For example, on Ubuntu / Debian, you would do:
+ </p>
+<pre class="programlisting">
+<span class="command"><strong>sudo apt-get install</strong></span> <span class="package">gcc g++ libfreetype6-dev libglib2.0-dev libcairo2-dev</span>
+ </pre>
+<p>
+ whereas on Fedora, RHEL, CentOS, and other Red Hat based systems you would do:
+ </p>
+<pre class="programlisting">
+<span class="command"><strong>sudo yum install</strong></span> <span class="package">gcc gcc-c++ freetype-devel glib2-devel cairo-devel</span>
+ </pre>
+<p>
+ or using MacPorts:
+ </p>
+<pre class="programlisting">
+<span class="command"><strong>sudo port install</strong></span> <span class="package">freetype glib2 cairo</span>
+ </pre>
+<p>
+ </p>
+<p>
+ If you are using a tarball, you can now proceed to running
+ <span class="command"><strong>configure</strong></span> and <span class="command"><strong>make</strong></span> as with any
+ other standard package. That should leave you with a shared library in
+ <code class="filename">src/</code>, and a few utility programs including hb-view
+ and hb-shape under <code class="filename">util/</code>.
+ </p>
+<p>
+ If you are bootstraping from git, you need a few more tools before you
+ can run <code class="filename">autogen.sh</code> for the first time. Namely,
+ pkg-config and <a class="ulink" href="http://www.complang.org/ragel/" target="_top">ragel</a>.
+ Again, on Ubuntu / Debian:
+ </p>
+<pre class="programlisting">
+<span class="command"><strong>sudo apt-get install</strong></span> <span class="package">autoconf automake libtool pkg-config ragel gtk-doc-tools</span>
+ </pre>
+<p>
+ and on Fedora, RHEL, CentOS:
+ </p>
+<pre class="programlisting">
+<span class="command"><strong>sudo yum install</strong></span> <span class="package">autoconf automake libtool pkgconfig ragel gtk-doc</span>
+ </pre>
+<p>
+ or using MacPorts:
+ </p>
+<pre class="programlisting">
+<span class="command"><strong>sudo port install</strong></span> <span class="package">autoconf automake libtool pkgconfig ragel gtk-doc</span>
+ </pre>
+<p>
+ </p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/reference/html/ch01.html b/docs/html/ch07.html
index a86abae..69fe962 100644
--- a/docs/reference/html/ch01.html
+++ b/docs/html/ch07.html
@@ -2,27 +2,27 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>[Insert title here]</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="prev" href="index.html" title="HarfBuzz Reference Manual">
+<title>Harfbuzz API: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="pt02.html" title="Part II. Reference manual">
<link rel="next" href="harfbuzz-hb.html" title="hb">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts"></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
-<td><a accesskey="p" href="index.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="pt02.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="chapter">
<div class="titlepage"><div><div><h2 class="title">
-<a name="idp8290832"></a>[Insert title here]</h2></div></div></div>
-<div class="toc"><dl>
+<a name="id-1.3.3"></a>Harfbuzz API</h2></div></div></div>
+<div class="toc"><dl class="toc">
<dt>
<span class="refentrytitle"><a href="harfbuzz-hb.html">hb</a></span><span class="refpurpose"></span>
</dt>
@@ -33,7 +33,7 @@
<span class="refentrytitle"><a href="harfbuzz-hb-unicode.html">hb-unicode</a></span><span class="refpurpose"></span>
</dt>
<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-buffer.html">hb-buffer</a></span><span class="refpurpose"></span>
+<span class="refentrytitle"><a href="harfbuzz-Buffers.html">Buffers</a></span><span class="refpurpose"> — Input and output buffers</span>
</dt>
<dt>
<span class="refentrytitle"><a href="harfbuzz-hb-blob.html">hb-blob</a></span><span class="refpurpose"></span>
@@ -45,7 +45,7 @@
<span class="refentrytitle"><a href="harfbuzz-hb-font.html">hb-font</a></span><span class="refpurpose"></span>
</dt>
<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-shape.html">hb-shape</a></span><span class="refpurpose"></span>
+<span class="refentrytitle"><a href="harfbuzz-Shaping.html">Shaping</a></span><span class="refpurpose"> — Conversion of text strings into positioned glyphs</span>
</dt>
<dt>
<span class="refentrytitle"><a href="harfbuzz-hb-version.html">hb-version</a></span><span class="refpurpose"></span>
@@ -66,6 +66,12 @@
<span class="refentrytitle"><a href="harfbuzz-hb-ot-tag.html">hb-ot-tag</a></span><span class="refpurpose"></span>
</dt>
<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-ot-font.html">hb-ot-font</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-ot-shape.html">hb-ot-shape</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
<span class="refentrytitle"><a href="harfbuzz-hb-shape-plan.html">hb-shape-plan</a></span><span class="refpurpose"></span>
</dt>
<dt>
@@ -92,7 +98,6 @@
</dl></div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/html/customizing-unicode-functions.html b/docs/html/customizing-unicode-functions.html
new file mode 100644
index 0000000..f496df4
--- /dev/null
+++ b/docs/html/customizing-unicode-functions.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Customizing Unicode functions: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="buffers-language-script-and-direction.html" title="Buffers, language, script and direction">
+<link rel="prev" href="what-about-the-other-scripts.html" title="What about the other scripts?">
+<link rel="next" href="fonts-and-faces.html" title="Fonts and faces">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="buffers-language-script-and-direction.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="what-about-the-other-scripts.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="fonts-and-faces.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="customizing-unicode-functions"></a>Customizing Unicode functions</h2></div></div></div>
+<p>
+ </p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/reference/html/deprecated-api-index.html b/docs/html/deprecated-api-index.html
index 3ccc21a..5b5bfbc 100644
--- a/docs/reference/html/deprecated-api-index.html
+++ b/docs/html/deprecated-api-index.html
@@ -2,23 +2,25 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Index of deprecated API</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="prev" href="api-index-full.html" title="API Index">
+<title>Index of deprecated API: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
+<link rel="prev" href="api-index-1-1-3.html" title="Index of new symbols in 1.1.3">
<link rel="next" href="annotation-glossary.html" title="Annotation Glossary">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxB">B</a>
 <span class="dim">|</span> 
+ <a class="shortcut" href="#idxF">F</a>
+  <span class="dim">|</span> 
<a class="shortcut" href="#idxS">S</a></span></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
-<td><a accesskey="p" href="api-index-full.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-1-1-3.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="annotation-glossary.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="index">
@@ -33,6 +35,15 @@
<a class="link" href="harfbuzz-hb-deprecated.html#HB-BUFFER-SERIALIZE-FLAGS-DEFAULT:CAPS" title="HB_BUFFER_SERIALIZE_FLAGS_DEFAULT">HB_BUFFER_SERIALIZE_FLAGS_DEFAULT</a>, macro in <a class="link" href="harfbuzz-hb-deprecated.html" title="hb-deprecated">hb-deprecated</a>
</dt>
<dd></dd>
+<a name="idxF"></a><h3 class="title">F</h3>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-func" title="hb_font_funcs_set_glyph_func ()">hb_font_funcs_set_glyph_func</a>, function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-func-t" title="hb_font_get_glyph_func_t ()">hb_font_get_glyph_func_t</a>, user_function in <a class="link" href="harfbuzz-hb-font.html" title="hb-font">hb-font</a>
+</dt>
+<dd></dd>
<a name="idxS"></a><h3 class="title">S</h3>
<dt>
<a class="link" href="harfbuzz-hb-deprecated.html#HB-SCRIPT-CANADIAN-ABORIGINAL:CAPS" title="HB_SCRIPT_CANADIAN_ABORIGINAL">HB_SCRIPT_CANADIAN_ABORIGINAL</a>, macro in <a class="link" href="harfbuzz-hb-deprecated.html" title="hb-deprecated">hb-deprecated</a>
@@ -40,7 +51,6 @@
<dd></dd>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/html/fonts-and-faces.html b/docs/html/fonts-and-faces.html
new file mode 100644
index 0000000..0700a1c
--- /dev/null
+++ b/docs/html/fonts-and-faces.html
@@ -0,0 +1,40 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Fonts and faces: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt01.html" title="Part I. User's manual">
+<link rel="prev" href="customizing-unicode-functions.html" title="Customizing Unicode functions">
+<link rel="next" href="using-harfbuzzs-native-opentype-implementation.html" title="Using Harfbuzz's native OpenType implementation">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="customizing-unicode-functions.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="using-harfbuzzs-native-opentype-implementation.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="fonts-and-faces"></a>Fonts and faces</h2></div></div></div>
+<div class="toc"><dl class="toc">
+<dt><span class="section"><a href="fonts-and-faces.html#using-freetype">Using FreeType</a></span></dt>
+<dt><span class="section"><a href="using-harfbuzzs-native-opentype-implementation.html">Using Harfbuzz's native OpenType implementation</a></span></dt>
+<dt><span class="section"><a href="using-your-own-font-functions.html">Using your own font functions</a></span></dt>
+</dl></div>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="using-freetype"></a>Using FreeType</h2></div></div></div>
+<p>
+ </p>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/harfbuzz-Buffers.html b/docs/html/harfbuzz-Buffers.html
new file mode 100644
index 0000000..6c7d0e9
--- /dev/null
+++ b/docs/html/harfbuzz-Buffers.html
@@ -0,0 +1,2722 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Buffers: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
+<link rel="prev" href="harfbuzz-hb-unicode.html" title="hb-unicode">
+<link rel="next" href="harfbuzz-hb-blob.html" title="hb-blob">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+ <a href="#harfbuzz-Buffers.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+ <a href="#harfbuzz-Buffers.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="harfbuzz-hb-unicode.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="harfbuzz-hb-blob.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="refentry">
+<a name="harfbuzz-Buffers"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="harfbuzz-Buffers.top_of_page"></a>Buffers</span></h2>
+<p>Buffers — Input and output buffers</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="harfbuzz-Buffers.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
+<tbody>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="returnvalue">hb_buffer_t</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-create" title="hb_buffer_create ()">hb_buffer_create</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="returnvalue">hb_buffer_t</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-reference" title="hb_buffer_reference ()">hb_buffer_reference</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="returnvalue">hb_buffer_t</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-empty" title="hb_buffer_get_empty ()">hb_buffer_get_empty</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-destroy" title="hb_buffer_destroy ()">hb_buffer_destroy</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-reset" title="hb_buffer_reset ()">hb_buffer_reset</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-clear-contents" title="hb_buffer_clear_contents ()">hb_buffer_clear_contents</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-pre-allocate" title="hb_buffer_pre_allocate ()">hb_buffer_pre_allocate</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-allocation-successful" title="hb_buffer_allocation_successful ()">hb_buffer_allocation_successful</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add" title="hb_buffer_add ()">hb_buffer_add</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-codepoints" title="hb_buffer_add_codepoints ()">hb_buffer_add_codepoints</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-utf32" title="hb_buffer_add_utf32 ()">hb_buffer_add_utf32</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-utf16" title="hb_buffer_add_utf16 ()">hb_buffer_add_utf16</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-utf8" title="hb_buffer_add_utf8 ()">hb_buffer_add_utf8</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-latin1" title="hb_buffer_add_latin1 ()">hb_buffer_add_latin1</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-content-type" title="hb_buffer_set_content_type ()">hb_buffer_set_content_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-content-type-t" title="enum hb_buffer_content_type_t"><span class="returnvalue">hb_buffer_content_type_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-content-type" title="hb_buffer_get_content_type ()">hb_buffer_get_content_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-direction" title="hb_buffer_set_direction ()">hb_buffer_set_direction</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-direction-t" title="enum hb_direction_t"><span class="returnvalue">hb_direction_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-direction" title="hb_buffer_get_direction ()">hb_buffer_get_direction</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-script" title="hb_buffer_set_script ()">hb_buffer_set_script</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="returnvalue">hb_script_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-script" title="hb_buffer_get_script ()">hb_buffer_get_script</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-language" title="hb_buffer_set_language ()">hb_buffer_set_language</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="returnvalue">hb_language_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-language" title="hb_buffer_get_language ()">hb_buffer_get_language</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-flags" title="hb_buffer_set_flags ()">hb_buffer_set_flags</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-flags-t" title="enum hb_buffer_flags_t"><span class="returnvalue">hb_buffer_flags_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-flags" title="hb_buffer_get_flags ()">hb_buffer_get_flags</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-cluster-level" title="hb_buffer_set_cluster_level ()">hb_buffer_set_cluster_level</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-cluster-level-t" title="enum hb_buffer_cluster_level_t"><span class="returnvalue">hb_buffer_cluster_level_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-cluster-level" title="hb_buffer_get_cluster_level ()">hb_buffer_get_cluster_level</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-length" title="hb_buffer_set_length ()">hb_buffer_set_length</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">unsigned <span class="returnvalue">int</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-length" title="hb_buffer_get_length ()">hb_buffer_get_length</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-segment-properties" title="hb_buffer_set_segment_properties ()">hb_buffer_set_segment_properties</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-segment-properties" title="hb_buffer_get_segment_properties ()">hb_buffer_get_segment_properties</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-guess-segment-properties" title="hb_buffer_guess_segment_properties ()">hb_buffer_guess_segment_properties</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-unicode-funcs" title="hb_buffer_set_unicode_funcs ()">hb_buffer_set_unicode_funcs</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="returnvalue">hb_unicode_funcs_t</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-unicode-funcs" title="hb_buffer_get_unicode_funcs ()">hb_buffer_get_unicode_funcs</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-user-data" title="hb_buffer_set_user_data ()">hb_buffer_set_user_data</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span> *
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-user-data" title="hb_buffer_get_user_data ()">hb_buffer_get_user_data</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-Buffers.html#hb-glyph-info-t"><span class="returnvalue">hb_glyph_info_t</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-glyph-infos" title="hb_buffer_get_glyph_infos ()">hb_buffer_get_glyph_infos</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-Buffers.html#hb-glyph-position-t"><span class="returnvalue">hb_glyph_position_t</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-glyph-positions" title="hb_buffer_get_glyph_positions ()">hb_buffer_get_glyph_positions</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-replacement-codepoint" title="hb_buffer_set_replacement_codepoint ()">hb_buffer_set_replacement_codepoint</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="returnvalue">hb_codepoint_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-replacement-codepoint" title="hb_buffer_get_replacement_codepoint ()">hb_buffer_get_replacement_codepoint</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-normalize-glyphs" title="hb_buffer_normalize_glyphs ()">hb_buffer_normalize_glyphs</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-reverse" title="hb_buffer_reverse ()">hb_buffer_reverse</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-reverse-range" title="hb_buffer_reverse_range ()">hb_buffer_reverse_range</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-reverse-clusters" title="hb_buffer_reverse_clusters ()">hb_buffer_reverse_clusters</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">unsigned <span class="returnvalue">int</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-glyphs" title="hb_buffer_serialize_glyphs ()">hb_buffer_serialize_glyphs</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-deserialize-glyphs" title="hb_buffer_deserialize_glyphs ()">hb_buffer_deserialize_glyphs</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t"><span class="returnvalue">hb_buffer_serialize_format_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-from-string" title="hb_buffer_serialize_format_from_string ()">hb_buffer_serialize_format_from_string</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <span class="returnvalue">char</span> *
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-to-string" title="hb_buffer_serialize_format_to_string ()">hb_buffer_serialize_format_to_string</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <span class="returnvalue">char</span> **
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-list-formats" title="hb_buffer_serialize_list_formats ()">hb_buffer_serialize_list_formats</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-equal" title="hb_segment_properties_equal ()">hb_segment_properties_equal</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">unsigned <span class="returnvalue">int</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-hash" title="hb_segment_properties_hash ()">hb_segment_properties_hash</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-message-func" title="hb_buffer_set_message_func ()">hb_buffer_set_message_func</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="harfbuzz-Buffers.html#hb-buffer-message-func-t" title="hb_buffer_message_func_t ()">*hb_buffer_message_func_t</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<a name="hb-buffer-t"></a><a name="hb-glyph-info-t"></a><a name="hb-glyph-position-t"></a><a name="hb-segment-properties-t"></a><div class="refsect1">
+<a name="harfbuzz-Buffers.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
+<tbody>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-Buffers.html#HB-SEGMENT-PROPERTIES-DEFAULT:CAPS" title="HB_SEGMENT_PROPERTIES_DEFAULT">HB_SEGMENT_PROPERTIES_DEFAULT</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-Buffers.html#HB-BUFFER-REPLACEMENT-CODEPOINT-DEFAULT:CAPS" title="HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT">HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT</a></td>
+</tr>
+<tr>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t">hb_buffer_t</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword"> </td>
+<td class="function_name"><a class="link" href="harfbuzz-Buffers.html#hb-glyph-info-t-struct" title="hb_glyph_info_t">hb_glyph_info_t</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword"> </td>
+<td class="function_name"><a class="link" href="harfbuzz-Buffers.html#hb-glyph-position-t-struct" title="hb_glyph_position_t">hb_glyph_position_t</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="harfbuzz-Buffers.html#hb-buffer-content-type-t" title="enum hb_buffer_content_type_t">hb_buffer_content_type_t</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="harfbuzz-Buffers.html#hb-buffer-flags-t" title="enum hb_buffer_flags_t">hb_buffer_flags_t</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="harfbuzz-Buffers.html#hb-buffer-cluster-level-t" title="enum hb_buffer_cluster_level_t">hb_buffer_cluster_level_t</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword"> </td>
+<td class="function_name"><a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t-struct" title="hb_segment_properties_t">hb_segment_properties_t</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t">hb_buffer_serialize_format_t</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-flags-t" title="enum hb_buffer_serialize_flags_t">hb_buffer_serialize_flags_t</a></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-Buffers.object-hierarchy"></a><h2>Object Hierarchy</h2>
+<pre class="screen"> <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html">GBoxed</a>
+ <span class="lineart">├──</span> hb_buffer_t
+ <span class="lineart">├──</span> hb_glyph_info_t
+ <span class="lineart">├──</span> hb_glyph_position_t
+ <span class="lineart">╰──</span> hb_segment_properties_t
+ <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a>
+ <span class="lineart">├──</span> hb_buffer_cluster_level_t
+ <span class="lineart">├──</span> hb_buffer_content_type_t
+ <span class="lineart">╰──</span> hb_buffer_serialize_format_t
+ <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GFlags</a>
+ <span class="lineart">├──</span> hb_buffer_flags_t
+ <span class="lineart">╰──</span> hb_buffer_serialize_flags_t
+</pre>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-Buffers.includes"></a><h2>Includes</h2>
+<pre class="synopsis">#include &lt;hb.h&gt;
+</pre>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-Buffers.description"></a><h2>Description</h2>
+<p>Buffers serve dual role in HarfBuzz; they hold the input characters that are
+passed <a class="link" href="harfbuzz-Shaping.html#hb-shape" title="hb_shape ()"><code class="function">hb_shape()</code></a>, and after shaping they hold the output glyphs.</p>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-Buffers.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="hb-buffer-create"></a><h3>hb_buffer_create ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="returnvalue">hb_buffer_t</span></a> *
+hb_buffer_create (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>Creates a new <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> with all properties to defaults.</p>
+<p><span class="annotation">[Xconstructor]</span></p>
+<div class="refsect3">
+<a name="hb-buffer-create.returns"></a><h4>Returns</h4>
+<p>A newly allocated <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> with a reference count of 1. The initial
+reference count should be released with <a class="link" href="harfbuzz-Buffers.html#hb-buffer-destroy" title="hb_buffer_destroy ()"><code class="function">hb_buffer_destroy()</code></a> when you are done
+using the <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>. This function never returns <code class="literal">NULL</code>. If memory cannot
+be allocated, a special <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> object will be returned on which
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-allocation-successful" title="hb_buffer_allocation_successful ()"><code class="function">hb_buffer_allocation_successful()</code></a> returns <code class="literal">false</code>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-reference"></a><h3>hb_buffer_reference ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="returnvalue">hb_buffer_t</span></a> *
+hb_buffer_reference (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<p>Increases the reference count on <em class="parameter"><code>buffer</code></em>
+ by one. This prevents <em class="parameter"><code>buffer</code></em>
+ from
+being destroyed until a matching call to <a class="link" href="harfbuzz-Buffers.html#hb-buffer-destroy" title="hb_buffer_destroy ()"><code class="function">hb_buffer_destroy()</code></a> is made.</p>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
+<div class="refsect3">
+<a name="hb-buffer-reference.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-reference.returns"></a><h4>Returns</h4>
+<p>The referenced <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-get-empty"></a><h3>hb_buffer_get_empty ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="returnvalue">hb_buffer_t</span></a> *
+hb_buffer_get_empty (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<div class="refsect3">
+<a name="hb-buffer-get-empty.returns"></a><h4>Returns</h4>
+<p>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-destroy"></a><h3>hb_buffer_destroy ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_destroy (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<p>Deallocate the <em class="parameter"><code>buffer</code></em>
+.
+Decreases the reference count on <em class="parameter"><code>buffer</code></em>
+ by one. If the result is zero, then
+<em class="parameter"><code>buffer</code></em>
+ and all associated resources are freed. See <a class="link" href="harfbuzz-Buffers.html#hb-buffer-reference" title="hb_buffer_reference ()"><code class="function">hb_buffer_reference()</code></a>.</p>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
+<div class="refsect3">
+<a name="hb-buffer-destroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-reset"></a><h3>hb_buffer_reset ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_reset (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<p>Resets the buffer to its initial status, as if it was just newly created
+with <a class="link" href="harfbuzz-Buffers.html#hb-buffer-create" title="hb_buffer_create ()"><code class="function">hb_buffer_create()</code></a>.</p>
+<div class="refsect3">
+<a name="hb-buffer-reset.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-clear-contents"></a><h3>hb_buffer_clear_contents ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_clear_contents (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<p>Similar to <a class="link" href="harfbuzz-Buffers.html#hb-buffer-reset" title="hb_buffer_reset ()"><code class="function">hb_buffer_reset()</code></a>, but does not clear the Unicode functions and
+the replacement code point.</p>
+<div class="refsect3">
+<a name="hb-buffer-clear-contents.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-11.html#api-index-0.9.11">0.9.11</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-pre-allocate"></a><h3>hb_buffer_pre_allocate ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+hb_buffer_pre_allocate (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> size</code></em>);</pre>
+<p>Pre allocates memory for <em class="parameter"><code>buffer</code></em>
+ to fit at least <em class="parameter"><code>size</code></em>
+ number of items.</p>
+<div class="refsect3">
+<a name="hb-buffer-pre-allocate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>number of items to pre allocate.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-pre-allocate.returns"></a><h4>Returns</h4>
+<p><code class="literal">true</code> if <em class="parameter"><code>buffer</code></em>
+memory allocation succeeded, <code class="literal">false</code> otherwise.</p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-allocation-successful"></a><h3>hb_buffer_allocation_successful ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+hb_buffer_allocation_successful (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<p>Check if allocating memory for the buffer succeeded.</p>
+<div class="refsect3">
+<a name="hb-buffer-allocation-successful.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-allocation-successful.returns"></a><h4>Returns</h4>
+<p><code class="literal">true</code> if <em class="parameter"><code>buffer</code></em>
+memory allocation succeeded, <code class="literal">false</code> otherwise.</p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-add"></a><h3>hb_buffer_add ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_add (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> codepoint</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> cluster</code></em>);</pre>
+<p>Appends a character with the Unicode value of <em class="parameter"><code>codepoint</code></em>
+ to <em class="parameter"><code>buffer</code></em>
+, and
+gives it the initial cluster value of <em class="parameter"><code>cluster</code></em>
+. Clusters can be any thing
+the client wants, they are usually used to refer to the index of the
+character in the input text stream and are output in
+<span class="type">hb_glyph_info_t.cluster</span> field.</p>
+<p>This function does not check the validity of <em class="parameter"><code>codepoint</code></em>
+, it is up to the
+caller to ensure it is a valid Unicode code point.</p>
+<div class="refsect3">
+<a name="hb-buffer-add.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>codepoint</p></td>
+<td class="parameter_description"><p>a Unicode code point.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cluster</p></td>
+<td class="parameter_description"><p>the cluster value of <em class="parameter"><code>codepoint</code></em>
+.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-add-codepoints"></a><h3>hb_buffer_add_codepoints ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_add_codepoints (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>const <a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *text</code></em>,
+ <em class="parameter"><code><span class="type">int</span> text_length</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> item_offset</code></em>,
+ <em class="parameter"><code><span class="type">int</span> item_length</code></em>);</pre>
+<p>Appends characters from <em class="parameter"><code>text</code></em>
+ array to <em class="parameter"><code>buffer</code></em>
+. The <em class="parameter"><code>item_offset</code></em>
+ is the
+position of the first character from <em class="parameter"><code>text</code></em>
+ that will be appended, and
+<em class="parameter"><code>item_length</code></em>
+ is the number of character. When shaping part of a larger text
+(e.g. a run of text from a paragraph), instead of passing just the substring
+corresponding to the run, it is preferable to pass the whole
+paragraph and specify the run start and length as <em class="parameter"><code>item_offset</code></em>
+ and
+<em class="parameter"><code>item_length</code></em>
+, respectively, to give HarfBuzz the full context to be able,
+for example, to do cross-run Arabic shaping or properly handle combining
+marks at stat of run.</p>
+<p>This function does not check the validity of <em class="parameter"><code>text</code></em>
+, it is up to the caller
+to ensure it contains a valid Unicode code points.</p>
+<div class="refsect3">
+<a name="hb-buffer-add-codepoints.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>a <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> to append characters to.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>text</p></td>
+<td class="parameter_description"><p> an array of Unicode code points to append. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=text_length]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>text_length</p></td>
+<td class="parameter_description"><p>the length of the <em class="parameter"><code>text</code></em>
+, or -1 if it is <code class="literal">NULL</code> terminated.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>item_offset</p></td>
+<td class="parameter_description"><p>the offset of the first code point to add to the <em class="parameter"><code>buffer</code></em>
+.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>item_length</p></td>
+<td class="parameter_description"><p>the number of code points to add to the <em class="parameter"><code>buffer</code></em>
+, or -1 for the
+end of <em class="parameter"><code>text</code></em>
+(assuming it is <code class="literal">NULL</code> terminated).</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-31.html#api-index-0.9.31">0.9.31</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-add-utf32"></a><h3>hb_buffer_add_utf32 ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_add_utf32 (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>const <span class="type">uint32_t</span> *text</code></em>,
+ <em class="parameter"><code><span class="type">int</span> text_length</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> item_offset</code></em>,
+ <em class="parameter"><code><span class="type">int</span> item_length</code></em>);</pre>
+<p>See <a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-codepoints" title="hb_buffer_add_codepoints ()"><code class="function">hb_buffer_add_codepoints()</code></a>.</p>
+<p>Replaces invalid UTF-32 characters with the <em class="parameter"><code>buffer</code></em>
+ replacement code point,
+see <a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-replacement-codepoint" title="hb_buffer_set_replacement_codepoint ()"><code class="function">hb_buffer_set_replacement_codepoint()</code></a>.</p>
+<div class="refsect3">
+<a name="hb-buffer-add-utf32.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>text</p></td>
+<td class="parameter_description"><p> an array of UTF-32 characters to append. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=text_length]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>text_length</p></td>
+<td class="parameter_description"><p>the length of the <em class="parameter"><code>text</code></em>
+, or -1 if it is <code class="literal">NULL</code> terminated.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>item_offset</p></td>
+<td class="parameter_description"><p>the offset of the first character to add to the <em class="parameter"><code>buffer</code></em>
+.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>item_length</p></td>
+<td class="parameter_description"><p>the number of characters to add to the <em class="parameter"><code>buffer</code></em>
+, or -1 for the
+end of <em class="parameter"><code>text</code></em>
+(assuming it is <code class="literal">NULL</code> terminated).</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-add-utf16"></a><h3>hb_buffer_add_utf16 ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_add_utf16 (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>const <span class="type">uint16_t</span> *text</code></em>,
+ <em class="parameter"><code><span class="type">int</span> text_length</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> item_offset</code></em>,
+ <em class="parameter"><code><span class="type">int</span> item_length</code></em>);</pre>
+<p>See <a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-codepoints" title="hb_buffer_add_codepoints ()"><code class="function">hb_buffer_add_codepoints()</code></a>.</p>
+<p>Replaces invalid UTF-16 characters with the <em class="parameter"><code>buffer</code></em>
+ replacement code point,
+see <a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-replacement-codepoint" title="hb_buffer_set_replacement_codepoint ()"><code class="function">hb_buffer_set_replacement_codepoint()</code></a>.</p>
+<div class="refsect3">
+<a name="hb-buffer-add-utf16.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>text</p></td>
+<td class="parameter_description"><p> an array of UTF-16 characters to append. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=text_length]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>text_length</p></td>
+<td class="parameter_description"><p>the length of the <em class="parameter"><code>text</code></em>
+, or -1 if it is <code class="literal">NULL</code> terminated.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>item_offset</p></td>
+<td class="parameter_description"><p>the offset of the first character to add to the <em class="parameter"><code>buffer</code></em>
+.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>item_length</p></td>
+<td class="parameter_description"><p>the number of characters to add to the <em class="parameter"><code>buffer</code></em>
+, or -1 for the
+end of <em class="parameter"><code>text</code></em>
+(assuming it is <code class="literal">NULL</code> terminated).</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-add-utf8"></a><h3>hb_buffer_add_utf8 ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_add_utf8 (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>const <span class="type">char</span> *text</code></em>,
+ <em class="parameter"><code><span class="type">int</span> text_length</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> item_offset</code></em>,
+ <em class="parameter"><code><span class="type">int</span> item_length</code></em>);</pre>
+<p>See <a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-codepoints" title="hb_buffer_add_codepoints ()"><code class="function">hb_buffer_add_codepoints()</code></a>.</p>
+<p>Replaces invalid UTF-8 characters with the <em class="parameter"><code>buffer</code></em>
+ replacement code point,
+see <a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-replacement-codepoint" title="hb_buffer_set_replacement_codepoint ()"><code class="function">hb_buffer_set_replacement_codepoint()</code></a>.</p>
+<div class="refsect3">
+<a name="hb-buffer-add-utf8.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>text</p></td>
+<td class="parameter_description"><p> an array of UTF-8
+characters to append. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=text_length][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> uint8_t]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>text_length</p></td>
+<td class="parameter_description"><p>the length of the <em class="parameter"><code>text</code></em>
+, or -1 if it is <code class="literal">NULL</code> terminated.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>item_offset</p></td>
+<td class="parameter_description"><p>the offset of the first character to add to the <em class="parameter"><code>buffer</code></em>
+.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>item_length</p></td>
+<td class="parameter_description"><p>the number of characters to add to the <em class="parameter"><code>buffer</code></em>
+, or -1 for the
+end of <em class="parameter"><code>text</code></em>
+(assuming it is <code class="literal">NULL</code> terminated).</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-add-latin1"></a><h3>hb_buffer_add_latin1 ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_add_latin1 (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>const <span class="type">uint8_t</span> *text</code></em>,
+ <em class="parameter"><code><span class="type">int</span> text_length</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> item_offset</code></em>,
+ <em class="parameter"><code><span class="type">int</span> item_length</code></em>);</pre>
+<p>Similar to <a class="link" href="harfbuzz-Buffers.html#hb-buffer-add-codepoints" title="hb_buffer_add_codepoints ()"><code class="function">hb_buffer_add_codepoints()</code></a>, but allows only access to first 256
+Unicode code points that can fit in 8-bit strings.</p>
+<div class="note">Has nothing to do with non-Unicode Latin-1 encoding.</div>
+<div class="refsect3">
+<a name="hb-buffer-add-latin1.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>text</p></td>
+<td class="parameter_description"><p> an array of UTF-8
+characters to append. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=text_length][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> uint8_t]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>text_length</p></td>
+<td class="parameter_description"><p>the length of the <em class="parameter"><code>text</code></em>
+, or -1 if it is <code class="literal">NULL</code> terminated.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>item_offset</p></td>
+<td class="parameter_description"><p>the offset of the first character to add to the <em class="parameter"><code>buffer</code></em>
+.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>item_length</p></td>
+<td class="parameter_description"><p>the number of characters to add to the <em class="parameter"><code>buffer</code></em>
+, or -1 for the
+end of <em class="parameter"><code>text</code></em>
+(assuming it is <code class="literal">NULL</code> terminated).</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-39.html#api-index-0.9.39">0.9.39</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-set-content-type"></a><h3>hb_buffer_set_content_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_set_content_type (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-content-type-t" title="enum hb_buffer_content_type_t"><span class="type">hb_buffer_content_type_t</span></a> content_type</code></em>);</pre>
+<p>Sets the type of <em class="parameter"><code>buffer</code></em>
+ contents, buffers are either empty, contain
+characters (before shaping) or glyphs (the result of shaping).</p>
+<div class="refsect3">
+<a name="hb-buffer-set-content-type.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>content_type</p></td>
+<td class="parameter_description"><p>the type of buffer contents to set</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-5.html#api-index-0.9.5">0.9.5</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-get-content-type"></a><h3>hb_buffer_get_content_type ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-Buffers.html#hb-buffer-content-type-t" title="enum hb_buffer_content_type_t"><span class="returnvalue">hb_buffer_content_type_t</span></a>
+hb_buffer_get_content_type (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<p>see <a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-content-type" title="hb_buffer_set_content_type ()"><code class="function">hb_buffer_set_content_type()</code></a>.</p>
+<div class="refsect3">
+<a name="hb-buffer-get-content-type.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-get-content-type.returns"></a><h4>Returns</h4>
+<p>The type of <em class="parameter"><code>buffer</code></em>
+contents.</p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-5.html#api-index-0.9.5">0.9.5</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-set-direction"></a><h3>hb_buffer_set_direction ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_set_direction (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-direction-t" title="enum hb_direction_t"><span class="type">hb_direction_t</span></a> direction</code></em>);</pre>
+<p>Set the text flow direction of the buffer. No shaping can happen without
+setting <em class="parameter"><code>buffer</code></em>
+ direction, and it controls the visual direction for the
+output glyphs; for RTL direction the glyphs will be reversed. Many layout
+features depend on the proper setting of the direction, for example,
+reversing RTL text before shaping, then shaping with LTR direction is not
+the same as keeping the text in logical order and shaping with RTL
+direction.</p>
+<div class="refsect3">
+<a name="hb-buffer-set-direction.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>direction</p></td>
+<td class="parameter_description"><p>the <a class="link" href="harfbuzz-hb-common.html#hb-direction-t" title="enum hb_direction_t"><span class="type">hb_direction_t</span></a> of the <em class="parameter"><code>buffer</code></em>
+</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-get-direction"></a><h3>hb_buffer_get_direction ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-direction-t" title="enum hb_direction_t"><span class="returnvalue">hb_direction_t</span></a>
+hb_buffer_get_direction (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<p>See <a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-direction" title="hb_buffer_set_direction ()"><code class="function">hb_buffer_set_direction()</code></a></p>
+<div class="refsect3">
+<a name="hb-buffer-get-direction.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-get-direction.returns"></a><h4>Returns</h4>
+<p>The direction of the <em class="parameter"><code>buffer</code></em>
+.</p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-set-script"></a><h3>hb_buffer_set_script ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_set_script (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> script</code></em>);</pre>
+<p>Sets the script of <em class="parameter"><code>buffer</code></em>
+ to <em class="parameter"><code>script</code></em>
+.</p>
+<p>Script is crucial for choosing the proper shaping behaviour for scripts that
+require it (e.g. Arabic) and the which OpenType features defined in the font
+to be applied.</p>
+<p>You can pass one of the predefined <a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> values, or use
+<a class="link" href="harfbuzz-hb-common.html#hb-script-from-string" title="hb_script_from_string ()"><code class="function">hb_script_from_string()</code></a> or <a class="link" href="harfbuzz-hb-common.html#hb-script-from-iso15924-tag" title="hb_script_from_iso15924_tag ()"><code class="function">hb_script_from_iso15924_tag()</code></a> to get the
+corresponding script from an ISO 15924 script tag.</p>
+<div class="refsect3">
+<a name="hb-buffer-set-script.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>script</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> to set.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-get-script"></a><h3>hb_buffer_get_script ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="returnvalue">hb_script_t</span></a>
+hb_buffer_get_script (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<p>See <a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-script" title="hb_buffer_set_script ()"><code class="function">hb_buffer_set_script()</code></a>.</p>
+<div class="refsect3">
+<a name="hb-buffer-get-script.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-get-script.returns"></a><h4>Returns</h4>
+<p>The <a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> of the <em class="parameter"><code>buffer</code></em>
+.</p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-set-language"></a><h3>hb_buffer_set_language ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_set_language (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="type">hb_language_t</span></a> language</code></em>);</pre>
+<p>Sets the language of <em class="parameter"><code>buffer</code></em>
+ to <em class="parameter"><code>language</code></em>
+.</p>
+<p>Languages are crucial for selecting which OpenType feature to apply to the
+buffer which can result in applying language-specific behaviour. Languages
+are orthogonal to the scripts, and though they are related, they are
+different concepts and should not be confused with each other.</p>
+<p>Use <a class="link" href="harfbuzz-hb-common.html#hb-language-from-string" title="hb_language_from_string ()"><code class="function">hb_language_from_string()</code></a> to convert from ISO 639 language codes to
+<a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="type">hb_language_t</span></a>.</p>
+<div class="refsect3">
+<a name="hb-buffer-set-language.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>language</p></td>
+<td class="parameter_description"><p>an hb_language_t to set.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-get-language"></a><h3>hb_buffer_get_language ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="returnvalue">hb_language_t</span></a>
+hb_buffer_get_language (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<p>See <a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-language" title="hb_buffer_set_language ()"><code class="function">hb_buffer_set_language()</code></a>.</p>
+<div class="refsect3">
+<a name="hb-buffer-get-language.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-get-language.returns"></a><h4>Returns</h4>
+<p>The <a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="type">hb_language_t</span></a> of the buffer. Must not be freed by the caller. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-set-flags"></a><h3>hb_buffer_set_flags ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_set_flags (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-flags-t" title="enum hb_buffer_flags_t"><span class="type">hb_buffer_flags_t</span></a> flags</code></em>);</pre>
+<p>Sets <em class="parameter"><code>buffer</code></em>
+ flags to <em class="parameter"><code>flags</code></em>
+. See <a class="link" href="harfbuzz-Buffers.html#hb-buffer-flags-t" title="enum hb_buffer_flags_t"><span class="type">hb_buffer_flags_t</span></a>.</p>
+<div class="refsect3">
+<a name="hb-buffer-set-flags.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>flags</p></td>
+<td class="parameter_description"><p>the buffer flags to set.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-get-flags"></a><h3>hb_buffer_get_flags ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-Buffers.html#hb-buffer-flags-t" title="enum hb_buffer_flags_t"><span class="returnvalue">hb_buffer_flags_t</span></a>
+hb_buffer_get_flags (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<p>See <a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-flags" title="hb_buffer_set_flags ()"><code class="function">hb_buffer_set_flags()</code></a>.</p>
+<div class="refsect3">
+<a name="hb-buffer-get-flags.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-get-flags.returns"></a><h4>Returns</h4>
+<p>The <em class="parameter"><code>buffer</code></em>
+flags.</p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-set-cluster-level"></a><h3>hb_buffer_set_cluster_level ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_set_cluster_level (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-cluster-level-t" title="enum hb_buffer_cluster_level_t"><span class="type">hb_buffer_cluster_level_t</span></a> cluster_level</code></em>);</pre>
+<div class="refsect3">
+<a name="hb-buffer-set-cluster-level.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-42.html#api-index-0.9.42">0.9.42</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-get-cluster-level"></a><h3>hb_buffer_get_cluster_level ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-Buffers.html#hb-buffer-cluster-level-t" title="enum hb_buffer_cluster_level_t"><span class="returnvalue">hb_buffer_cluster_level_t</span></a>
+hb_buffer_get_cluster_level (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<div class="refsect3">
+<a name="hb-buffer-get-cluster-level.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-42.html#api-index-0.9.42">0.9.42</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-set-length"></a><h3>hb_buffer_set_length ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+hb_buffer_set_length (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> length</code></em>);</pre>
+<p>Similar to <a class="link" href="harfbuzz-Buffers.html#hb-buffer-pre-allocate" title="hb_buffer_pre_allocate ()"><code class="function">hb_buffer_pre_allocate()</code></a>, but clears any new items added at the
+end.</p>
+<div class="refsect3">
+<a name="hb-buffer-set-length.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>length</p></td>
+<td class="parameter_description"><p>the new length of <em class="parameter"><code>buffer</code></em>
+.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-set-length.returns"></a><h4>Returns</h4>
+<p><code class="literal">true</code> if <em class="parameter"><code>buffer</code></em>
+memory allocation succeeded, <code class="literal">false</code> otherwise.</p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-get-length"></a><h3>hb_buffer_get_length ()</h3>
+<pre class="programlisting">unsigned <span class="returnvalue">int</span>
+hb_buffer_get_length (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<p>Returns the number of items in the buffer.</p>
+<div class="refsect3">
+<a name="hb-buffer-get-length.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-get-length.returns"></a><h4>Returns</h4>
+<p>The <em class="parameter"><code>buffer</code></em>
+length.
+The value valid as long as buffer has not been modified.</p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-set-segment-properties"></a><h3>hb_buffer_set_segment_properties ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_set_segment_properties (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>const <a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> *props</code></em>);</pre>
+<p>Sets the segment properties of the buffer, a shortcut for calling
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-direction" title="hb_buffer_set_direction ()"><code class="function">hb_buffer_set_direction()</code></a>, <a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-script" title="hb_buffer_set_script ()"><code class="function">hb_buffer_set_script()</code></a> and
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-language" title="hb_buffer_set_language ()"><code class="function">hb_buffer_set_language()</code></a> individually.</p>
+<div class="refsect3">
+<a name="hb-buffer-set-segment-properties.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>props</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> to use.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-get-segment-properties"></a><h3>hb_buffer_get_segment_properties ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_get_segment_properties (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> *props</code></em>);</pre>
+<p>Sets <em class="parameter"><code>props</code></em>
+ to the <a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> of <em class="parameter"><code>buffer</code></em>
+.</p>
+<div class="refsect3">
+<a name="hb-buffer-get-segment-properties.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>props</p></td>
+<td class="parameter_description"><p> the output <a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-guess-segment-properties"></a><h3>hb_buffer_guess_segment_properties ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_guess_segment_properties (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<p>Sets unset buffer segment properties based on buffer Unicode
+contents. If buffer is not empty, it must have content type
+<a class="link" href="harfbuzz-Buffers.html#HB-BUFFER-CONTENT-TYPE-UNICODE:CAPS"><code class="literal">HB_BUFFER_CONTENT_TYPE_UNICODE</code></a>.</p>
+<p>If buffer script is not set (ie. is <a class="link" href="harfbuzz-hb-common.html#HB-SCRIPT-INVALID:CAPS"><code class="literal">HB_SCRIPT_INVALID</code></a>), it
+will be set to the Unicode script of the first character in
+the buffer that has a script other than <a class="link" href="harfbuzz-hb-common.html#HB-SCRIPT-COMMON:CAPS"><code class="literal">HB_SCRIPT_COMMON</code></a>,
+<a class="link" href="harfbuzz-hb-common.html#HB-SCRIPT-INHERITED:CAPS"><code class="literal">HB_SCRIPT_INHERITED</code></a>, and <a class="link" href="harfbuzz-hb-common.html#HB-SCRIPT-UNKNOWN:CAPS"><code class="literal">HB_SCRIPT_UNKNOWN</code></a>.</p>
+<p>Next, if buffer direction is not set (ie. is <a class="link" href="harfbuzz-hb-common.html#HB-DIRECTION-INVALID:CAPS"><code class="literal">HB_DIRECTION_INVALID</code></a>),
+it will be set to the natural horizontal direction of the
+buffer script as returned by <a class="link" href="harfbuzz-hb-common.html#hb-script-get-horizontal-direction" title="hb_script_get_horizontal_direction ()"><code class="function">hb_script_get_horizontal_direction()</code></a>.</p>
+<p>Finally, if buffer language is not set (ie. is <a class="link" href="harfbuzz-hb-common.html#HB-LANGUAGE-INVALID:CAPS" title="HB_LANGUAGE_INVALID"><code class="literal">HB_LANGUAGE_INVALID</code></a>),
+it will be set to the process's default language as returned by
+<a class="link" href="harfbuzz-hb-common.html#hb-language-get-default" title="hb_language_get_default ()"><code class="function">hb_language_get_default()</code></a>. This may change in the future by
+taking buffer script into consideration when choosing a language.</p>
+<div class="refsect3">
+<a name="hb-buffer-guess-segment-properties.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-set-unicode-funcs"></a><h3>hb_buffer_set_unicode_funcs ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_set_unicode_funcs (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *unicode_funcs</code></em>);</pre>
+<div class="refsect3">
+<a name="hb-buffer-set-unicode-funcs.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-get-unicode-funcs"></a><h3>hb_buffer_get_unicode_funcs ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="returnvalue">hb_unicode_funcs_t</span></a> *
+hb_buffer_get_unicode_funcs (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<div class="refsect3">
+<a name="hb-buffer-get-unicode-funcs.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-set-user-data"></a><h3>hb_buffer_set_user_data ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+hb_buffer_set_user_data (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-user-data-key-t"><span class="type">hb_user_data_key_t</span></a> *key</code></em>,
+ <em class="parameter"><code><span class="type">void</span> *data</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="type">hb_bool_t</span></a> replace</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
+<div class="refsect3">
+<a name="hb-buffer-set-user-data.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-get-user-data"></a><h3>hb_buffer_get_user_data ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> *
+hb_buffer_get_user_data (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-user-data-key-t"><span class="type">hb_user_data_key_t</span></a> *key</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
+<div class="refsect3">
+<a name="hb-buffer-get-user-data.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-get-glyph-infos"></a><h3>hb_buffer_get_glyph_infos ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-Buffers.html#hb-glyph-info-t"><span class="returnvalue">hb_glyph_info_t</span></a> *
+hb_buffer_get_glyph_infos (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> *length</code></em>);</pre>
+<p>Returns <em class="parameter"><code>buffer</code></em>
+ glyph information array. Returned pointer
+is valid as long as <em class="parameter"><code>buffer</code></em>
+ contents are not modified.</p>
+<div class="refsect3">
+<a name="hb-buffer-get-glyph-infos.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>length</p></td>
+<td class="parameter_description"><p> output array length. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-get-glyph-infos.returns"></a><h4>Returns</h4>
+<p>The <em class="parameter"><code>buffer</code></em>
+glyph information array.
+The value valid as long as buffer has not been modified. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=length]</span></p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-get-glyph-positions"></a><h3>hb_buffer_get_glyph_positions ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-Buffers.html#hb-glyph-position-t"><span class="returnvalue">hb_glyph_position_t</span></a> *
+hb_buffer_get_glyph_positions (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> *length</code></em>);</pre>
+<p>Returns <em class="parameter"><code>buffer</code></em>
+ glyph position array. Returned pointer
+is valid as long as <em class="parameter"><code>buffer</code></em>
+ contents are not modified.</p>
+<div class="refsect3">
+<a name="hb-buffer-get-glyph-positions.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>length</p></td>
+<td class="parameter_description"><p> output length. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-get-glyph-positions.returns"></a><h4>Returns</h4>
+<p>The <em class="parameter"><code>buffer</code></em>
+glyph position array.
+The value valid as long as buffer has not been modified. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=length]</span></p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-set-replacement-codepoint"></a><h3>hb_buffer_set_replacement_codepoint ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_set_replacement_codepoint (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> replacement</code></em>);</pre>
+<p>Sets the <a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> that replaces invalid entries for a given encoding
+when adding text to <em class="parameter"><code>buffer</code></em>
+.</p>
+<p>Default is <a class="link" href="harfbuzz-Buffers.html#HB-BUFFER-REPLACEMENT-CODEPOINT-DEFAULT:CAPS" title="HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT"><code class="literal">HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT</code></a>.</p>
+<div class="refsect3">
+<a name="hb-buffer-set-replacement-codepoint.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>replacement</p></td>
+<td class="parameter_description"><p>the replacement <a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-31.html#api-index-0.9.31">0.9.31</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-get-replacement-codepoint"></a><h3>hb_buffer_get_replacement_codepoint ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="returnvalue">hb_codepoint_t</span></a>
+hb_buffer_get_replacement_codepoint (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<p>See <a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-replacement-codepoint" title="hb_buffer_set_replacement_codepoint ()"><code class="function">hb_buffer_set_replacement_codepoint()</code></a>.</p>
+<div class="refsect3">
+<a name="hb-buffer-get-replacement-codepoint.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-get-replacement-codepoint.returns"></a><h4>Returns</h4>
+<p>The <em class="parameter"><code>buffer</code></em>
+replacement <a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a>.</p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-31.html#api-index-0.9.31">0.9.31</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-normalize-glyphs"></a><h3>hb_buffer_normalize_glyphs ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_normalize_glyphs (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<p>Reorders a glyph buffer to have canonical in-cluster glyph order / position.
+The resulting clusters should behave identical to pre-reordering clusters.</p>
+<div class="note">This has nothing to do with Unicode normalization.</div>
+<div class="refsect3">
+<a name="hb-buffer-normalize-glyphs.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-reverse"></a><h3>hb_buffer_reverse ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_reverse (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<p>Reverses buffer contents.</p>
+<div class="refsect3">
+<a name="hb-buffer-reverse.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-reverse-range"></a><h3>hb_buffer_reverse_range ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_reverse_range (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> start</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> end</code></em>);</pre>
+<p>Reverses buffer contents between start to end.</p>
+<div class="refsect3">
+<a name="hb-buffer-reverse-range.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>start</p></td>
+<td class="parameter_description"><p>start index.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>end</p></td>
+<td class="parameter_description"><p>end index.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-41.html#api-index-0.9.41">0.9.41</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-reverse-clusters"></a><h3>hb_buffer_reverse_clusters ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_reverse_clusters (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
+<p>Reverses buffer clusters. That is, the buffer contents are
+reversed, then each cluster (consecutive items having the
+same cluster number) are reversed again.</p>
+<div class="refsect3">
+<a name="hb-buffer-reverse-clusters.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-serialize-glyphs"></a><h3>hb_buffer_serialize_glyphs ()</h3>
+<pre class="programlisting">unsigned <span class="returnvalue">int</span>
+hb_buffer_serialize_glyphs (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> start</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> end</code></em>,
+ <em class="parameter"><code><span class="type">char</span> *buf</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> buf_size</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> *buf_consumed</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t"><span class="type">hb_buffer_serialize_format_t</span></a> format</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-flags-t" title="enum hb_buffer_serialize_flags_t"><span class="type">hb_buffer_serialize_flags_t</span></a> flags</code></em>);</pre>
+<p>Serializes <em class="parameter"><code>buffer</code></em>
+ into a textual representation of its glyph content,
+useful for showing the contents of the buffer, for example during debugging.
+There are currently two supported serialization formats:</p>
+<div class="refsect3">
+<a name="id-1.3.3.5.12.45.5"></a><h4>text</h4>
+<p>A human-readable, plain text format.
+The serialized glyphs will look something like:</p>
+<p><code class="literal">
+[uni0651=0@518,0+0|uni0628=0+1897]
+</code></p>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>The serialized glyphs are delimited with <code class="literal">[</code> and <code class="literal">]</code>.</p></li>
+<li class="listitem"><p>Glyphs are separated with <code class="literal">|</code></p></li>
+<li class="listitem">
+<p>Each glyph starts with glyph name, or glyph index if
+<a class="link" href="harfbuzz-Buffers.html#HB-BUFFER-SERIALIZE-FLAG-NO-GLYPH-NAMES:CAPS"><span class="type">HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES</span></a> flag is set. Then,</p>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; ">
+<li class="listitem"><p>If <a class="link" href="harfbuzz-Buffers.html#HB-BUFFER-SERIALIZE-FLAG-NO-CLUSTERS:CAPS"><span class="type">HB_BUFFER_SERIALIZE_FLAG_NO_CLUSTERS</span></a> is not set, <code class="literal">=</code> then <span class="type">hb_glyph_info_t.cluster</span>.</p></li>
+<li class="listitem">
+<p>If <a class="link" href="harfbuzz-Buffers.html#HB-BUFFER-SERIALIZE-FLAG-NO-POSITIONS:CAPS"><span class="type">HB_BUFFER_SERIALIZE_FLAG_NO_POSITIONS</span></a> is not set, the <a class="link" href="harfbuzz-Buffers.html#hb-glyph-position-t"><span class="type">hb_glyph_position_t</span></a> in the format:</p>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: square; ">
+<li class="listitem"><p>If both <span class="type">hb_glyph_position_t.x_offset</span> and <span class="type">hb_glyph_position_t.y_offset</span> are not 0, <code class="literal">@x_offset,y_offset</code>. Then,</p></li>
+<li class="listitem"><p><code class="literal">+x_advance</code>, then <code class="literal">,y_advance</code> if <span class="type">hb_glyph_position_t.y_advance</span> is not 0. Then,</p></li>
+</ul></div>
+</li>
+<li class="listitem"><p>If <a class="link" href="harfbuzz-Buffers.html#HB-BUFFER-SERIALIZE-FLAG-GLYPH-EXTENTS:CAPS"><span class="type">HB_BUFFER_SERIALIZE_FLAG_GLYPH_EXTENTS</span></a> is set, the
+<span class="type">hb_glyph_extents_t</span> in the format
+<code class="literal">&lt;x_bearing,y_bearing,width,height&gt;</code></p></li>
+</ul></div>
+</li>
+</ul></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.3.5.12.45.6"></a><h4>json</h4>
+<p>TODO.</p>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-serialize-glyphs.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> buffer.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>start</p></td>
+<td class="parameter_description"><p>the first item in <em class="parameter"><code>buffer</code></em>
+to serialize.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>end</p></td>
+<td class="parameter_description"><p>the last item in <em class="parameter"><code>buffer</code></em>
+to serialize.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p> output string to
+write serialized buffer into. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=buf_size][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> uint8_t]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>buf_size</p></td>
+<td class="parameter_description"><p>the size of <em class="parameter"><code>buf</code></em>
+.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>buf_consumed</p></td>
+<td class="parameter_description"><p> if not <code class="literal">NULL</code>, will be set to the number of byes written into <em class="parameter"><code>buf</code></em>
+. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>font</p></td>
+<td class="parameter_description"><p> the <a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> used to shape this buffer, needed to
+read glyph names and extents. If <code class="literal">NULL</code>, and empty font will be used. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the <a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t"><span class="type">hb_buffer_serialize_format_t</span></a> to use for formatting the output.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>flags</p></td>
+<td class="parameter_description"><p>the <a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-flags-t" title="enum hb_buffer_serialize_flags_t"><span class="type">hb_buffer_serialize_flags_t</span></a> that control what glyph properties
+to serialize.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-serialize-glyphs.returns"></a><h4>Returns</h4>
+<p>The number of serialized items.</p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-deserialize-glyphs"></a><h3>hb_buffer_deserialize_glyphs ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+hb_buffer_deserialize_glyphs (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>const <span class="type">char</span> *buf</code></em>,
+ <em class="parameter"><code><span class="type">int</span> buf_len</code></em>,
+ <em class="parameter"><code>const <span class="type">char</span> **end_ptr</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t"><span class="type">hb_buffer_serialize_format_t</span></a> format</code></em>);</pre>
+<div class="refsect3">
+<a name="hb-buffer-deserialize-glyphs.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> buffer.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=buf_len]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>end_ptr</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-serialize-format-from-string"></a><h3>hb_buffer_serialize_format_from_string ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t"><span class="returnvalue">hb_buffer_serialize_format_t</span></a>
+hb_buffer_serialize_format_from_string
+ (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>,
+ <em class="parameter"><code><span class="type">int</span> len</code></em>);</pre>
+<p>Parses a string into an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t"><span class="type">hb_buffer_serialize_format_t</span></a>. Does not check if
+<em class="parameter"><code>str</code></em>
+ is a valid buffer serialization format, use
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-list-formats" title="hb_buffer_serialize_list_formats ()"><code class="function">hb_buffer_serialize_list_formats()</code></a> to get the list of supported formats.</p>
+<div class="refsect3">
+<a name="hb-buffer-serialize-format-from-string.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>str</p></td>
+<td class="parameter_description"><p> a string to parse. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=len][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> uint8_t]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>len</p></td>
+<td class="parameter_description"><p>length of <em class="parameter"><code>str</code></em>
+, or -1 if string is <code class="literal">NULL</code> terminated</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-serialize-format-from-string.returns"></a><h4>Returns</h4>
+<p>The parsed <a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t"><span class="type">hb_buffer_serialize_format_t</span></a>.</p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-serialize-format-to-string"></a><h3>hb_buffer_serialize_format_to_string ()</h3>
+<pre class="programlisting">const <span class="returnvalue">char</span> *
+hb_buffer_serialize_format_to_string (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t"><span class="type">hb_buffer_serialize_format_t</span></a> format</code></em>);</pre>
+<p>Converts <em class="parameter"><code>format</code></em>
+ to the string corresponding it, or <code class="literal">NULL</code> if it is not a valid
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t"><span class="type">hb_buffer_serialize_format_t</span></a>.</p>
+<div class="refsect3">
+<a name="hb-buffer-serialize-format-to-string.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t"><span class="type">hb_buffer_serialize_format_t</span></a> to convert.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-buffer-serialize-format-to-string.returns"></a><h4>Returns</h4>
+<p>A <code class="literal">NULL</code> terminated string corresponding to <em class="parameter"><code>format</code></em>
+. Should not be freed. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-serialize-list-formats"></a><h3>hb_buffer_serialize_list_formats ()</h3>
+<pre class="programlisting">const <span class="returnvalue">char</span> **
+hb_buffer_serialize_list_formats (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>Returns a list of supported buffer serialization formats.</p>
+<div class="refsect3">
+<a name="hb-buffer-serialize-list-formats.returns"></a><h4>Returns</h4>
+<p>A string array of buffer serialization formats. Should not be freed. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-segment-properties-equal"></a><h3>hb_segment_properties_equal ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+hb_segment_properties_equal (<em class="parameter"><code>const <a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> *a</code></em>,
+ <em class="parameter"><code>const <a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> *b</code></em>);</pre>
+<p>Checks the equality of two <a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a>'s.</p>
+<div class="refsect3">
+<a name="hb-segment-properties-equal.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>a</p></td>
+<td class="parameter_description"><p>first <a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> to compare.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>b</p></td>
+<td class="parameter_description"><p>second <a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> to compare.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-segment-properties-equal.returns"></a><h4>Returns</h4>
+<p><code class="literal">true</code> if all properties of <em class="parameter"><code>a</code></em>
+equal those of <em class="parameter"><code>b</code></em>
+, false otherwise. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-segment-properties-hash"></a><h3>hb_segment_properties_hash ()</h3>
+<pre class="programlisting">unsigned <span class="returnvalue">int</span>
+hb_segment_properties_hash (<em class="parameter"><code>const <a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> *p</code></em>);</pre>
+<p>Creates a hash representing <em class="parameter"><code>p</code></em>
+.</p>
+<div class="refsect3">
+<a name="hb-segment-properties-hash.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>p</p></td>
+<td class="parameter_description"><p><a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> to hash.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-segment-properties-hash.returns"></a><h4>Returns</h4>
+<p>A hash of <em class="parameter"><code>p</code></em>
+.</p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-set-message-func"></a><h3>hb_buffer_set_message_func ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_buffer_set_message_func (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-message-func-t" title="hb_buffer_message_func_t ()"><span class="type">hb_buffer_message_func_t</span></a> func</code></em>,
+ <em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
+<div class="refsect3">
+<a name="hb-buffer-set-message-func.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-1-1-3.html#api-index-1.1.3">1.1.3</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-message-func-t"></a><h3>hb_buffer_message_func_t ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+<span class="c_punctuation">(</span>*hb_buffer_message_func_t<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
+ <em class="parameter"><code>const <span class="type">char</span> *message</code></em>,
+ <em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
+</div>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-Buffers.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="HB-SEGMENT-PROPERTIES-DEFAULT:CAPS"></a><h3>HB_SEGMENT_PROPERTIES_DEFAULT</h3>
+<pre class="programlisting">#define HB_SEGMENT_PROPERTIES_DEFAULT</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-BUFFER-REPLACEMENT-CODEPOINT-DEFAULT:CAPS"></a><h3>HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT</h3>
+<pre class="programlisting">#define HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT 0xFFFDu
+</pre>
+<p>The default code point for replacing invalid characters in a given encoding.
+Set to U+FFFD REPLACEMENT CHARACTER.</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-31.html#api-index-0.9.31">0.9.31</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-t"></a><h3>hb_buffer_t</h3>
+<pre class="programlisting">typedef struct hb_buffer_t hb_buffer_t;
+</pre>
+<p>The main structure holding the input text and its properties before shaping,
+and output glyphs and their information after shaping.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-glyph-info-t-struct"></a><h3>hb_glyph_info_t</h3>
+<pre class="programlisting">typedef struct {
+ hb_codepoint_t codepoint;
+ hb_mask_t mask;
+ uint32_t cluster;
+} hb_glyph_info_t;
+</pre>
+<p>The <a class="link" href="harfbuzz-Buffers.html#hb-glyph-info-t"><span class="type">hb_glyph_info_t</span></a> is the structure that holds information about the
+glyphs and their relation to input text.</p>
+<div class="refsect3">
+<a name="hb-glyph-info-t.members"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> <em class="structfield"><code><a name="hb-glyph-info-t-struct.codepoint"></a>codepoint</code></em>;</p></td>
+<td class="struct_member_description"><p>either a Unicode code point (before shaping) or a glyph index
+(after shaping).</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a class="link" href="harfbuzz-hb-common.html#hb-mask-t" title="hb_mask_t"><span class="type">hb_mask_t</span></a> <em class="structfield"><code><a name="hb-glyph-info-t-struct.mask"></a>mask</code></em>;</p></td>
+<td class="struct_member_description"> </td>
+<td class="struct_member_annotations"> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><span class="type">uint32_t</span> <em class="structfield"><code><a name="hb-glyph-info-t-struct.cluster"></a>cluster</code></em>;</p></td>
+<td class="struct_member_description"><p>the index of the character in the original text that corresponds
+to this <a class="link" href="harfbuzz-Buffers.html#hb-glyph-info-t"><span class="type">hb_glyph_info_t</span></a>, or whatever the client passes to
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-add" title="hb_buffer_add ()"><code class="function">hb_buffer_add()</code></a>. More than one <a class="link" href="harfbuzz-Buffers.html#hb-glyph-info-t"><span class="type">hb_glyph_info_t</span></a> can have the same
+<em class="parameter"><code>cluster</code></em>
+value, if they resulted from the same character (e.g. one
+to many glyph substitution), and when more than one character gets
+merged in the same glyph (e.g. many to one glyph substitution) the
+<a class="link" href="harfbuzz-Buffers.html#hb-glyph-info-t"><span class="type">hb_glyph_info_t</span></a> will have the smallest cluster value of them.
+By default some characters are merged into the same cluster
+(e.g. combining marks have the same cluster as their bases)
+even if they are separate glyphs, <a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-cluster-level" title="hb_buffer_set_cluster_level ()"><code class="function">hb_buffer_set_cluster_level()</code></a>
+allow selecting more fine-grained cluster handling.</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-glyph-position-t-struct"></a><h3>hb_glyph_position_t</h3>
+<pre class="programlisting">typedef struct {
+ hb_position_t x_advance;
+ hb_position_t y_advance;
+ hb_position_t x_offset;
+ hb_position_t y_offset;
+} hb_glyph_position_t;
+</pre>
+<p>The <a class="link" href="harfbuzz-Buffers.html#hb-glyph-position-t"><span class="type">hb_glyph_position_t</span></a> is the structure that holds the positions of the
+glyph in both horizontal and vertical directions. All positions in
+<a class="link" href="harfbuzz-Buffers.html#hb-glyph-position-t"><span class="type">hb_glyph_position_t</span></a> are relative to the current point.</p>
+<div class="refsect3">
+<a name="hb-glyph-position-t.members"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> <em class="structfield"><code><a name="hb-glyph-position-t-struct.x-advance"></a>x_advance</code></em>;</p></td>
+<td class="struct_member_description"><p>how much the line advances after drawing this glyph when setting
+text in horizontal direction.</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> <em class="structfield"><code><a name="hb-glyph-position-t-struct.y-advance"></a>y_advance</code></em>;</p></td>
+<td class="struct_member_description"><p>how much the line advances after drawing this glyph when setting
+text in vertical direction.</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> <em class="structfield"><code><a name="hb-glyph-position-t-struct.x-offset"></a>x_offset</code></em>;</p></td>
+<td class="struct_member_description"><p>how much the glyph moves on the X-axis before drawing it, this
+should not affect how much the line advances.</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> <em class="structfield"><code><a name="hb-glyph-position-t-struct.y-offset"></a>y_offset</code></em>;</p></td>
+<td class="struct_member_description"><p>how much the glyph moves on the Y-axis before drawing it, this
+should not affect how much the line advances.</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-content-type-t"></a><h3>enum hb_buffer_content_type_t</h3>
+<div class="refsect3">
+<a name="hb-buffer-content-type-t.members"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-CONTENT-TYPE-INVALID:CAPS"></a>HB_BUFFER_CONTENT_TYPE_INVALID</p></td>
+<td class="enum_member_description">
+<p>Initial value for new buffer.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-CONTENT-TYPE-UNICODE:CAPS"></a>HB_BUFFER_CONTENT_TYPE_UNICODE</p></td>
+<td class="enum_member_description">
+<p>The buffer contains input characters (before shaping).</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-CONTENT-TYPE-GLYPHS:CAPS"></a>HB_BUFFER_CONTENT_TYPE_GLYPHS</p></td>
+<td class="enum_member_description">
+<p>The buffer contains output glyphs (after shaping).</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-flags-t"></a><h3>enum hb_buffer_flags_t</h3>
+<div class="refsect3">
+<a name="hb-buffer-flags-t.members"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-FLAG-DEFAULT:CAPS"></a>HB_BUFFER_FLAG_DEFAULT</p></td>
+<td class="enum_member_description">
+<p>the default buffer flag.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-FLAG-BOT:CAPS"></a>HB_BUFFER_FLAG_BOT</p></td>
+<td class="enum_member_description">
+<p>flag indicating that special handling of the beginning
+ of text paragraph can be applied to this buffer. Should usually
+ be set, unless you are passing to the buffer only part
+ of the text without the full context.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-FLAG-EOT:CAPS"></a>HB_BUFFER_FLAG_EOT</p></td>
+<td class="enum_member_description">
+<p>flag indicating that special handling of the end of text
+ paragraph can be applied to this buffer, similar to
+ <em class="parameter"><code>HB_BUFFER_FLAG_EOT</code></em>
+.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-FLAG-PRESERVE-DEFAULT-IGNORABLES:CAPS"></a>HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES</p></td>
+<td class="enum_member_description">
+<p> flag indication that character with Default_Ignorable
+ Unicode property should use the corresponding glyph
+ from the font, instead of hiding them (currently done
+ by replacing them with the space glyph and zeroing the
+ advance width.)</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-20.html#api-index-0.9.20">0.9.20</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-cluster-level-t"></a><h3>enum hb_buffer_cluster_level_t</h3>
+<div class="refsect3">
+<a name="hb-buffer-cluster-level-t.members"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-CLUSTER-LEVEL-MONOTONE-GRAPHEMES:CAPS"></a>HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-CLUSTER-LEVEL-MONOTONE-CHARACTERS:CAPS"></a>HB_BUFFER_CLUSTER_LEVEL_MONOTONE_CHARACTERS</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-CLUSTER-LEVEL-CHARACTERS:CAPS"></a>HB_BUFFER_CLUSTER_LEVEL_CHARACTERS</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-CLUSTER-LEVEL-DEFAULT:CAPS"></a>HB_BUFFER_CLUSTER_LEVEL_DEFAULT</p></td>
+<td> </td>
+<td> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-segment-properties-t-struct"></a><h3>hb_segment_properties_t</h3>
+<pre class="programlisting">typedef struct {
+ hb_direction_t direction;
+ hb_script_t script;
+ hb_language_t language;
+} hb_segment_properties_t;
+</pre>
+<p>The structure that holds various text properties of an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a>. Can be
+set and retrieved using <a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-segment-properties" title="hb_buffer_set_segment_properties ()"><code class="function">hb_buffer_set_segment_properties()</code></a> and
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-get-segment-properties" title="hb_buffer_get_segment_properties ()"><code class="function">hb_buffer_get_segment_properties()</code></a>, respectively.</p>
+<div class="refsect3">
+<a name="hb-segment-properties-t.members"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="struct_member_name"><p><a class="link" href="harfbuzz-hb-common.html#hb-direction-t" title="enum hb_direction_t"><span class="type">hb_direction_t</span></a> <em class="structfield"><code><a name="hb-segment-properties-t-struct.direction"></a>direction</code></em>;</p></td>
+<td class="struct_member_description"><p>the <a class="link" href="harfbuzz-hb-common.html#hb-direction-t" title="enum hb_direction_t"><span class="type">hb_direction_t</span></a> of the buffer, see <a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-direction" title="hb_buffer_set_direction ()"><code class="function">hb_buffer_set_direction()</code></a>.</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> <em class="structfield"><code><a name="hb-segment-properties-t-struct.script"></a>script</code></em>;</p></td>
+<td class="struct_member_description"><p>the <a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> of the buffer, see <a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-script" title="hb_buffer_set_script ()"><code class="function">hb_buffer_set_script()</code></a>.</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+<tr>
+<td class="struct_member_name"><p><a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="type">hb_language_t</span></a> <em class="structfield"><code><a name="hb-segment-properties-t-struct.language"></a>language</code></em>;</p></td>
+<td class="struct_member_description"><p>the <a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="type">hb_language_t</span></a> of the buffer, see <a class="link" href="harfbuzz-Buffers.html#hb-buffer-set-language" title="hb_buffer_set_language ()"><code class="function">hb_buffer_set_language()</code></a>.</p></td>
+<td class="struct_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-serialize-format-t"></a><h3>enum hb_buffer_serialize_format_t</h3>
+<p>The buffer serialization and de-serialization format used in
+<a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-glyphs" title="hb_buffer_serialize_glyphs ()"><code class="function">hb_buffer_serialize_glyphs()</code></a> and <a class="link" href="harfbuzz-Buffers.html#hb-buffer-deserialize-glyphs" title="hb_buffer_deserialize_glyphs ()"><code class="function">hb_buffer_deserialize_glyphs()</code></a>.</p>
+<div class="refsect3">
+<a name="hb-buffer-serialize-format-t.members"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-SERIALIZE-FORMAT-TEXT:CAPS"></a>HB_BUFFER_SERIALIZE_FORMAT_TEXT</p></td>
+<td class="enum_member_description">
+<p>a human-readable, plain text format.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-SERIALIZE-FORMAT-JSON:CAPS"></a>HB_BUFFER_SERIALIZE_FORMAT_JSON</p></td>
+<td class="enum_member_description">
+<p>a machine-readable JSON format.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-SERIALIZE-FORMAT-INVALID:CAPS"></a>HB_BUFFER_SERIALIZE_FORMAT_INVALID</p></td>
+<td class="enum_member_description">
+<p>invalid format.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-buffer-serialize-flags-t"></a><h3>enum hb_buffer_serialize_flags_t</h3>
+<p>Flags that control what glyph information are serialized in <a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-glyphs" title="hb_buffer_serialize_glyphs ()"><code class="function">hb_buffer_serialize_glyphs()</code></a>.</p>
+<div class="refsect3">
+<a name="hb-buffer-serialize-flags-t.members"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-SERIALIZE-FLAG-DEFAULT:CAPS"></a>HB_BUFFER_SERIALIZE_FLAG_DEFAULT</p></td>
+<td class="enum_member_description">
+<p>serialize glyph names, clusters and positions.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-SERIALIZE-FLAG-NO-CLUSTERS:CAPS"></a>HB_BUFFER_SERIALIZE_FLAG_NO_CLUSTERS</p></td>
+<td class="enum_member_description">
+<p>do not serialize glyph cluster.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-SERIALIZE-FLAG-NO-POSITIONS:CAPS"></a>HB_BUFFER_SERIALIZE_FLAG_NO_POSITIONS</p></td>
+<td class="enum_member_description">
+<p>do not serialize glyph position information.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-SERIALIZE-FLAG-NO-GLYPH-NAMES:CAPS"></a>HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES</p></td>
+<td class="enum_member_description">
+<p>do no serialize glyph name.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-BUFFER-SERIALIZE-FLAG-GLYPH-EXTENTS:CAPS"></a>HB_BUFFER_SERIALIZE_FLAG_GLYPH_EXTENTS</p></td>
+<td class="enum_member_description">
+<p>serialize glyph extents.</p>
+</td>
+<td class="enum_member_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-20.html#api-index-0.9.20">0.9.20</a></p>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/harfbuzz-Shaping.html b/docs/html/harfbuzz-Shaping.html
new file mode 100644
index 0000000..3e35150
--- /dev/null
+++ b/docs/html/harfbuzz-Shaping.html
@@ -0,0 +1,347 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Shaping: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
+<link rel="prev" href="harfbuzz-hb-font.html" title="hb-font">
+<link rel="next" href="harfbuzz-hb-version.html" title="hb-version">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+ <a href="#harfbuzz-Shaping.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
+ <a href="#harfbuzz-Shaping.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="harfbuzz-hb-font.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="harfbuzz-hb-version.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="refentry">
+<a name="harfbuzz-Shaping"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="harfbuzz-Shaping.top_of_page"></a>Shaping</span></h2>
+<p>Shaping — Conversion of text strings into positioned glyphs</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="harfbuzz-Shaping.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
+<tbody>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Shaping.html#hb-feature-from-string" title="hb_feature_from_string ()">hb_feature_from_string</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Shaping.html#hb-feature-to-string" title="hb_feature_to_string ()">hb_feature_to_string</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Shaping.html#hb-shape" title="hb_shape ()">hb_shape</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Shaping.html#hb-shape-full" title="hb_shape_full ()">hb_shape_full</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">const <span class="returnvalue">char</span> **
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-Shaping.html#hb-shape-list-shapers" title="hb_shape_list_shapers ()">hb_shape_list_shapers</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<a name="hb-feature-t"></a><div class="refsect1">
+<a name="harfbuzz-Shaping.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
+<tbody><tr>
+<td class="datatype_keyword"> </td>
+<td class="function_name"><a class="link" href="harfbuzz-Shaping.html#hb-feature-t-struct" title="hb_feature_t">hb_feature_t</a></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-Shaping.object-hierarchy"></a><h2>Object Hierarchy</h2>
+<pre class="screen"> <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html">GBoxed</a>
+ <span class="lineart">╰──</span> hb_feature_t
+</pre>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-Shaping.includes"></a><h2>Includes</h2>
+<pre class="synopsis">#include &lt;hb.h&gt;
+</pre>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-Shaping.description"></a><h2>Description</h2>
+<p>Shaping is the central operation of HarfBuzz. Shaping operates on buffers,
+which are sequences of Unicode characters that use the same font and have
+the same text direction, script and language. After shaping the buffer
+contains the output glyphs and their positions.</p>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-Shaping.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="hb-feature-from-string"></a><h3>hb_feature_from_string ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+hb_feature_from_string (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>,
+ <em class="parameter"><code><span class="type">int</span> len</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *feature</code></em>);</pre>
+<p>Parses a string into a <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a>.</p>
+<p>TODO: document the syntax here.</p>
+<div class="refsect3">
+<a name="hb-feature-from-string.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>str</p></td>
+<td class="parameter_description"><p> a string to parse. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=len][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> uint8_t]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>len</p></td>
+<td class="parameter_description"><p>length of <em class="parameter"><code>str</code></em>
+, or -1 if string is <code class="literal">NULL</code> terminated</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>feature</p></td>
+<td class="parameter_description"><p> the <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> to initialize with the parsed values. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-feature-from-string.returns"></a><h4>Returns</h4>
+<p><code class="literal">true</code> if <em class="parameter"><code>str</code></em>
+is successfully parsed, <code class="literal">false</code> otherwise.</p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-5.html#api-index-0.9.5">0.9.5</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-feature-to-string"></a><h3>hb_feature_to_string ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_feature_to_string (<em class="parameter"><code><a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *feature</code></em>,
+ <em class="parameter"><code><span class="type">char</span> *buf</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> size</code></em>);</pre>
+<p>Converts a <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> into a <code class="literal">NULL</code>-terminated string in the format
+understood by <a class="link" href="harfbuzz-Shaping.html#hb-feature-from-string" title="hb_feature_from_string ()"><code class="function">hb_feature_from_string()</code></a>. The client in responsible for
+allocating big enough size for <em class="parameter"><code>buf</code></em>
+, 128 bytes is more than enough.</p>
+<div class="refsect3">
+<a name="hb-feature-to-string.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>feature</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> to convert</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p> output string. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=size][<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the allocated size of <em class="parameter"><code>buf</code></em>
+</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-5.html#api-index-0.9.5">0.9.5</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-shape"></a><h3>hb_shape ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_shape (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>const <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *features</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> num_features</code></em>);</pre>
+<p>Shapes <em class="parameter"><code>buffer</code></em>
+ using <em class="parameter"><code>font</code></em>
+ turning its Unicode characters content to
+positioned glyphs. If <em class="parameter"><code>features</code></em>
+ is not <code class="literal">NULL</code>, it will be used to control the
+features applied during shaping.</p>
+<div class="refsect3">
+<a name="hb-shape.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>font</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> to use for shaping</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> to shape</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>features</p></td>
+<td class="parameter_description"><p> an array of user
+specified <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> or <code class="literal">NULL</code>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=num_features][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>num_features</p></td>
+<td class="parameter_description"><p>the length of <em class="parameter"><code>features</code></em>
+array</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-shape.returns"></a><h4>Returns</h4>
+<p> <code class="literal">FALSE</code> if all shapers failed, <code class="literal">TRUE</code> otherwise</p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-shape-full"></a><h3>hb_shape_full ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+hb_shape_full (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>const <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *features</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> num_features</code></em>,
+ <em class="parameter"><code>const <span class="type">char</span> * const *shaper_list</code></em>);</pre>
+<p>See <a class="link" href="harfbuzz-Shaping.html#hb-shape" title="hb_shape ()"><code class="function">hb_shape()</code></a> for details. If <em class="parameter"><code>shaper_list</code></em>
+ is not <code class="literal">NULL</code>, the specified
+shapers will be used in the given order, otherwise the default shapers list
+will be used.</p>
+<div class="refsect3">
+<a name="hb-shape-full.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>font</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> to use for shaping</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> to shape</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>features</p></td>
+<td class="parameter_description"><p> an array of user
+specified <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> or <code class="literal">NULL</code>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=num_features][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>num_features</p></td>
+<td class="parameter_description"><p>the length of <em class="parameter"><code>features</code></em>
+array</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>shaper_list</p></td>
+<td class="parameter_description"><p> a <code class="literal">NULL</code>-terminated
+array of shapers to use or <code class="literal">NULL</code>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-shape-full.returns"></a><h4>Returns</h4>
+<p> <code class="literal">FALSE</code> if all shapers failed, <code class="literal">TRUE</code> otherwise</p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-shape-list-shapers"></a><h3>hb_shape_list_shapers ()</h3>
+<pre class="programlisting">const <span class="returnvalue">char</span> **
+hb_shape_list_shapers (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>Retrieves the list of shapers supported by HarfBuzz.</p>
+<div class="refsect3">
+<a name="hb-shape-list-shapers.returns"></a><h4>Returns</h4>
+<p> an array of
+constant strings. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1]</span></p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-Shaping.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="hb-feature-t-struct"></a><h3>hb_feature_t</h3>
+<pre class="programlisting">typedef struct {
+ hb_tag_t tag;
+ uint32_t value;
+ unsigned int start;
+ unsigned int end;
+} hb_feature_t;
+</pre>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-blob.html b/docs/html/harfbuzz-hb-blob.html
index b7f9a12..fa54243 100644
--- a/docs/reference/html/harfbuzz-hb-blob.html
+++ b/docs/html/harfbuzz-hb-blob.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-blob</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
-<link rel="prev" href="harfbuzz-hb-buffer.html" title="hb-buffer">
+<title>hb-blob: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
+<link rel="prev" href="harfbuzz-Buffers.html" title="Buffers">
<link rel="next" href="harfbuzz-hb-face.html" title="hb-face">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -19,8 +19,8 @@
<a href="#harfbuzz-hb-blob.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="harfbuzz-hb-buffer.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="harfbuzz-Buffers.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-face.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
@@ -158,16 +158,14 @@
</div>
<div class="refsect1">
<a name="harfbuzz-hb-blob.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen"> GBoxed
+<pre class="screen"> <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html">GBoxed</a>
<span class="lineart">╰──</span> hb_blob_t
- GEnum
+ <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a>
<span class="lineart">╰──</span> hb_memory_mode_t
</pre>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-blob.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-blob.functions_details"></a><h2>Functions</h2>
@@ -184,8 +182,9 @@ hb_blob_create (<em class="parameter"><code>const <span class="type">char</span>
parameter is used
to negotiate ownership and lifecycle of <em class="parameter"><code>data</code></em>
.</p>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp17456912"></a><h4>Parameters</h4>
+<a name="hb-blob-create.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -226,13 +225,12 @@ is not needed anymore.</p></td>
</table></div>
</div>
<div class="refsect3">
-<a name="idp18906304"></a><h4>Returns</h4>
+<a name="hb-blob-create.returns"></a><h4>Returns</h4>
<p> New blob, or the empty blob if something failed or if <em class="parameter"><code>length</code></em>
is
zero. Destroy with <a class="link" href="harfbuzz-hb-blob.html#hb-blob-destroy" title="hb_blob_destroy ()"><code class="function">hb_blob_destroy()</code></a>.</p>
-<p></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -250,7 +248,7 @@ is.</p>
<p>Makes <em class="parameter"><code>parent</code></em>
immutable.</p>
<div class="refsect3">
-<a name="idp13979952"></a><h4>Parameters</h4>
+<a name="hb-blob-create-sub-blob.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -278,16 +276,15 @@ is.</p>
</table></div>
</div>
<div class="refsect3">
-<a name="idp20653328"></a><h4>Returns</h4>
+<a name="hb-blob-create-sub-blob.returns"></a><h4>Returns</h4>
<p> New blob, or the empty blob if something failed or if
<em class="parameter"><code>length</code></em>
is zero or <em class="parameter"><code>offset</code></em>
is beyond the end of <em class="parameter"><code>parent</code></em>
's data. Destroy
with <a class="link" href="harfbuzz-hb-blob.html#hb-blob-destroy" title="hb_blob_destroy ()"><code class="function">hb_blob_destroy()</code></a>.</p>
-<p></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -300,8 +297,9 @@ hb_blob_destroy (<em class="parameter"><code><a class="link" href="harfbuzz-hb-b
, freeing all memory, possibly calling the destroy-callback the blob
was created for if it has not been called already.</p>
<p>See TODO:link object types for more information.</p>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp21977536"></a><h4>Parameters</h4>
+<a name="hb-blob-destroy.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -315,7 +313,7 @@ was created for if it has not been called already.</p>
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -324,7 +322,7 @@ was created for if it has not been called already.</p>
hb_blob_get_data (<em class="parameter"><code><a class="link" href="harfbuzz-hb-blob.html#hb-blob-t"><span class="type">hb_blob_t</span></a> *blob</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *length</code></em>);</pre>
<div class="refsect3">
-<a name="idp21995504"></a><h4>Parameters</h4>
+<a name="hb-blob-get-data.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -346,11 +344,11 @@ hb_blob_get_data (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
</table></div>
</div>
<div class="refsect3">
-<a name="idp22007616"></a><h4>Returns</h4>
+<a name="hb-blob-get-data.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=length]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -363,7 +361,7 @@ return pointer to data.</p>
<p>Fails if blob has been made immutable, or if memory allocation
fails.</p>
<div class="refsect3">
-<a name="idp22021568"></a><h4>Parameters</h4>
+<a name="hb-blob-get-data-writable.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -385,12 +383,12 @@ fails.</p>
</table></div>
</div>
<div class="refsect3">
-<a name="idp22033696"></a><h4>Returns</h4>
+<a name="hb-blob-get-data-writable.returns"></a><h4>Returns</h4>
<p> Writable blob data,
or <code class="literal">NULL</code> if failed. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=length]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -400,11 +398,11 @@ hb_blob_get_empty (<em class="parameter"><code><span class="type">void</span></c
<p>Returns the singleton empty blob.</p>
<p>See TODO:link object types for more information.</p>
<div class="refsect3">
-<a name="idp22046512"></a><h4>Returns</h4>
+<a name="hb-blob-get-empty.returns"></a><h4>Returns</h4>
<p> the empty blob. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -412,7 +410,7 @@ hb_blob_get_empty (<em class="parameter"><code><span class="type">void</span></c
<pre class="programlisting">unsigned <span class="returnvalue">int</span>
hb_blob_get_length (<em class="parameter"><code><a class="link" href="harfbuzz-hb-blob.html#hb-blob-t"><span class="type">hb_blob_t</span></a> *blob</code></em>);</pre>
<div class="refsect3">
-<a name="idp22057312"></a><h4>Parameters</h4>
+<a name="hb-blob-get-length.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -427,11 +425,10 @@ hb_blob_get_length (<em class="parameter"><code><a class="link" href="harfbuzz-h
</table></div>
</div>
<div class="refsect3">
-<a name="idp22065712"></a><h4>Returns</h4>
+<a name="hb-blob-get-length.returns"></a><h4>Returns</h4>
<p> the length of blob data in bytes.</p>
-<p></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -439,8 +436,9 @@ hb_blob_get_length (<em class="parameter"><code><a class="link" href="harfbuzz-h
<pre class="programlisting"><span class="returnvalue">void</span> *
hb_blob_get_user_data (<em class="parameter"><code><a class="link" href="harfbuzz-hb-blob.html#hb-blob-t"><span class="type">hb_blob_t</span></a> *blob</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-user-data-key-t"><span class="type">hb_user_data_key_t</span></a> *key</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp22076912"></a><h4>Parameters</h4>
+<a name="hb-blob-get-user-data.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -462,11 +460,11 @@ hb_blob_get_user_data (<em class="parameter"><code><a class="link" href="harfbuz
</table></div>
</div>
<div class="refsect3">
-<a name="idp22087920"></a><h4>Returns</h4>
+<a name="hb-blob-get-user-data.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -474,7 +472,7 @@ hb_blob_get_user_data (<em class="parameter"><code><a class="link" href="harfbuz
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
hb_blob_is_immutable (<em class="parameter"><code><a class="link" href="harfbuzz-hb-blob.html#hb-blob-t"><span class="type">hb_blob_t</span></a> *blob</code></em>);</pre>
<div class="refsect3">
-<a name="idp22098576"></a><h4>Parameters</h4>
+<a name="hb-blob-is-immutable.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -489,11 +487,10 @@ hb_blob_is_immutable (<em class="parameter"><code><a class="link" href="harfbuzz
</table></div>
</div>
<div class="refsect3">
-<a name="idp21531488"></a><h4>Returns</h4>
+<a name="hb-blob-is-immutable.returns"></a><h4>Returns</h4>
<p> TODO</p>
-<p></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -501,7 +498,7 @@ hb_blob_is_immutable (<em class="parameter"><code><a class="link" href="harfbuzz
<pre class="programlisting"><span class="returnvalue">void</span>
hb_blob_make_immutable (<em class="parameter"><code><a class="link" href="harfbuzz-hb-blob.html#hb-blob-t"><span class="type">hb_blob_t</span></a> *blob</code></em>);</pre>
<div class="refsect3">
-<a name="idp21541040"></a><h4>Parameters</h4>
+<a name="hb-blob-make-immutable.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -515,7 +512,7 @@ hb_blob_make_immutable (<em class="parameter"><code><a class="link" href="harfbu
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -525,8 +522,9 @@ hb_blob_reference (<em class="parameter"><code><a class="link" href="harfbuzz-hb
<p>Increases the reference count on <em class="parameter"><code>blob</code></em>
.</p>
<p>See TODO:link object types for more information.</p>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp21558896"></a><h4>Parameters</h4>
+<a name="hb-blob-reference.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -541,12 +539,11 @@ hb_blob_reference (<em class="parameter"><code><a class="link" href="harfbuzz-hb
</table></div>
</div>
<div class="refsect3">
-<a name="idp21567296"></a><h4>Returns</h4>
+<a name="hb-blob-reference.returns"></a><h4>Returns</h4>
<p> <em class="parameter"><code>blob</code></em>
.</p>
-<p></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -557,8 +554,9 @@ hb_blob_set_user_data (<em class="parameter"><code><a class="link" href="harfbuz
<em class="parameter"><code><span class="type">void</span> *data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="type">hb_bool_t</span></a> replace</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp21584240"></a><h4>Parameters</h4>
+<a name="hb-blob-set-user-data.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -595,11 +593,7 @@ is not needed anymore.</p></td>
</tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp21603920"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
</div>
<div class="refsect1">
@@ -608,16 +602,12 @@ is not needed anymore.</p></td>
<a name="hb-blob-t"></a><h3>hb_blob_t</h3>
<pre class="programlisting">typedef struct hb_blob_t hb_blob_t;
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="hb-memory-mode-t"></a><h3>enum hb_memory_mode_t</h3>
-<p>
-</p>
<div class="refsect3">
-<a name="idp21615792"></a><h4>Members</h4>
+<a name="hb-memory-mode-t.members"></a><h4>Members</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="300px" class="enum_members_name">
@@ -627,23 +617,23 @@ is not needed anymore.</p></td>
<tbody>
<tr>
<td class="enum_member_name"><p><a name="HB-MEMORY-MODE-DUPLICATE:CAPS"></a>HB_MEMORY_MODE_DUPLICATE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-MEMORY-MODE-READONLY:CAPS"></a>HB_MEMORY_MODE_READONLY</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-MEMORY-MODE-WRITABLE:CAPS"></a>HB_MEMORY_MODE_WRITABLE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-MEMORY-MODE-READONLY-MAY-MAKE-WRITABLE:CAPS"></a>HB_MEMORY_MODE_READONLY_MAY_MAKE_WRITABLE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
</tbody>
</table></div>
@@ -652,7 +642,6 @@ is not needed anymore.</p></td>
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-common.html b/docs/html/harfbuzz-hb-common.html
index e2b1a8b..064be6e 100644
--- a/docs/reference/html/harfbuzz-hb-common.html
+++ b/docs/html/harfbuzz-hb-common.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-common</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
+<title>hb-common: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
<link rel="prev" href="harfbuzz-hb.html" title="hb">
<link rel="next" href="harfbuzz-hb-unicode.html" title="hb-unicode">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -19,7 +19,7 @@
<a href="#harfbuzz-hb-common.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-unicode.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
@@ -41,25 +41,11 @@
</colgroup>
<tbody>
<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-common.html#HB-DIRECTION-REVERSE:CAPS" title="HB_DIRECTION_REVERSE()">HB_DIRECTION_REVERSE</a><span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-common.html#HB-LANGUAGE-INVALID:CAPS" title="HB_LANGUAGE_INVALID">HB_LANGUAGE_INVALID</a></td>
-</tr>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-common.html#HB-TAG:CAPS" title="HB_TAG()">HB_TAG</a><span class="c_punctuation">()</span>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="returnvalue">hb_tag_t</span></a>
</td>
-</tr>
-<tr>
-<td class="define_keyword">#define</td>
<td class="function_name">
-<a class="link" href="harfbuzz-hb-common.html#HB-UNTAG:CAPS" title="HB_UNTAG()">HB_UNTAG</a><span class="c_punctuation">()</span>
+<a class="link" href="harfbuzz-hb-common.html#hb-tag-from-string" title="hb_tag_from_string ()">hb_tag_from_string</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
@@ -67,7 +53,7 @@
<span class="returnvalue">void</span>
</td>
<td class="function_name">
-<span class="c_punctuation">(</span><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()">*hb_destroy_func_t</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
+<a class="link" href="harfbuzz-hb-common.html#hb-tag-to-string" title="hb_tag_to_string ()">hb_tag_to_string</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
@@ -87,73 +73,83 @@
</tr>
<tr>
<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-language-t"><span class="returnvalue">hb_language_t</span></a>
+<a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="returnvalue">hb_script_t</span></a>
</td>
<td class="function_name">
-<a class="link" href="harfbuzz-hb-common.html#hb-language-from-string" title="hb_language_from_string ()">hb_language_from_string</a> <span class="c_punctuation">()</span>
+<a class="link" href="harfbuzz-hb-common.html#hb-script-from-iso15924-tag" title="hb_script_from_iso15924_tag ()">hb_script_from_iso15924_tag</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-language-t"><span class="returnvalue">hb_language_t</span></a>
+<a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="returnvalue">hb_script_t</span></a>
</td>
<td class="function_name">
-<a class="link" href="harfbuzz-hb-common.html#hb-language-get-default" title="hb_language_get_default ()">hb_language_get_default</a> <span class="c_punctuation">()</span>
+<a class="link" href="harfbuzz-hb-common.html#hb-script-from-string" title="hb_script_from_string ()">hb_script_from_string</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
-<td class="function_type">const <span class="returnvalue">char</span> *
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="returnvalue">hb_tag_t</span></a>
</td>
<td class="function_name">
-<a class="link" href="harfbuzz-hb-common.html#hb-language-to-string" title="hb_language_to_string ()">hb_language_to_string</a> <span class="c_punctuation">()</span>
+<a class="link" href="harfbuzz-hb-common.html#hb-script-to-iso15924-tag" title="hb_script_to_iso15924_tag ()">hb_script_to_iso15924_tag</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="returnvalue">hb_script_t</span></a>
+<a class="link" href="harfbuzz-hb-common.html#hb-direction-t" title="enum hb_direction_t"><span class="returnvalue">hb_direction_t</span></a>
</td>
<td class="function_name">
-<a class="link" href="harfbuzz-hb-common.html#hb-script-from-iso15924-tag" title="hb_script_from_iso15924_tag ()">hb_script_from_iso15924_tag</a> <span class="c_punctuation">()</span>
+<a class="link" href="harfbuzz-hb-common.html#hb-script-get-horizontal-direction" title="hb_script_get_horizontal_direction ()">hb_script_get_horizontal_direction</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="returnvalue">hb_script_t</span></a>
+<a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="returnvalue">hb_language_t</span></a>
</td>
<td class="function_name">
-<a class="link" href="harfbuzz-hb-common.html#hb-script-from-string" title="hb_script_from_string ()">hb_script_from_string</a> <span class="c_punctuation">()</span>
+<a class="link" href="harfbuzz-hb-common.html#hb-language-from-string" title="hb_language_from_string ()">hb_language_from_string</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-direction-t" title="enum hb_direction_t"><span class="returnvalue">hb_direction_t</span></a>
+<td class="function_type">const <span class="returnvalue">char</span> *
</td>
<td class="function_name">
-<a class="link" href="harfbuzz-hb-common.html#hb-script-get-horizontal-direction" title="hb_script_get_horizontal_direction ()">hb_script_get_horizontal_direction</a> <span class="c_punctuation">()</span>
+<a class="link" href="harfbuzz-hb-common.html#hb-language-to-string" title="hb_language_to_string ()">hb_language_to_string</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="returnvalue">hb_tag_t</span></a>
+<a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="returnvalue">hb_language_t</span></a>
</td>
<td class="function_name">
-<a class="link" href="harfbuzz-hb-common.html#hb-script-to-iso15924-tag" title="hb_script_to_iso15924_tag ()">hb_script_to_iso15924_tag</a> <span class="c_punctuation">()</span>
+<a class="link" href="harfbuzz-hb-common.html#hb-language-get-default" title="hb_language_get_default ()">hb_language_get_default</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="returnvalue">hb_tag_t</span></a>
+<span class="returnvalue">void</span>
</td>
<td class="function_name">
-<a class="link" href="harfbuzz-hb-common.html#hb-tag-from-string" title="hb_tag_from_string ()">hb_tag_from_string</a> <span class="c_punctuation">()</span>
+<span class="c_punctuation">(</span><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()">*hb_destroy_func_t</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-common.html#HB-TAG:CAPS" title="HB_TAG()">HB_TAG</a><span class="c_punctuation">()</span>
</td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
<td class="function_name">
-<a class="link" href="harfbuzz-hb-common.html#hb-tag-to-string" title="hb_tag_to_string ()">hb_tag_to_string</a> <span class="c_punctuation">()</span>
+<a class="link" href="harfbuzz-hb-common.html#HB-UNTAG:CAPS" title="HB_UNTAG()">HB_UNTAG</a><span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-common.html#HB-DIRECTION-REVERSE:CAPS" title="HB_DIRECTION_REVERSE()">HB_DIRECTION_REVERSE</a><span class="c_punctuation">()</span>
</td>
</tr>
<tr>
@@ -189,7 +185,7 @@
</tbody>
</table></div>
</div>
-<a name="hb-language-t"></a><a name="hb-user-data-key-t"></a><div class="refsect1">
+<a name="hb-user-data-key-t"></a><div class="refsect1">
<a name="harfbuzz-hb-common.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
@@ -198,14 +194,6 @@
</colgroup>
<tbody>
<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-common.html#HB-TAG-NONE:CAPS" title="HB_TAG_NONE">HB_TAG_NONE</a></td>
-</tr>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-common.html#HB-TAG-MAX:CAPS" title="HB_TAG_MAX">HB_TAG_MAX</a></td>
-</tr>
-<tr>
<td class="typedef_keyword">typedef</td>
<td class="function_name"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t">hb_bool_t</a></td>
</tr>
@@ -219,7 +207,7 @@
</tr>
<tr>
<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-common.html#hb-language-t">hb_language_t</a></td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t">hb_language_t</a></td>
</tr>
<tr>
<td class="typedef_keyword">typedef</td>
@@ -230,14 +218,14 @@
<td class="function_name"><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t">hb_position_t</a></td>
</tr>
<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t">hb_script_t</a></td>
-</tr>
-<tr>
<td class="typedef_keyword">typedef</td>
<td class="function_name"><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t">hb_tag_t</a></td>
</tr>
<tr>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t">hb_script_t</a></td>
+</tr>
+<tr>
<td class="datatype_keyword"> </td>
<td class="function_name"><a class="link" href="harfbuzz-hb-common.html#hb-user-data-key-t-struct" title="hb_user_data_key_t">hb_user_data_key_t</a></td>
</tr>
@@ -245,64 +233,83 @@
<td class="datatype_keyword"> </td>
<td class="function_name"><a class="link" href="harfbuzz-hb-common.html#hb-var-int-t" title="hb_var_int_t">hb_var_int_t</a></td>
</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-common.html#HB-TAG-NONE:CAPS" title="HB_TAG_NONE">HB_TAG_NONE</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-common.html#HB-TAG-MAX:CAPS" title="HB_TAG_MAX">HB_TAG_MAX</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-common.html#HB-TAG-MAX-SIGNED:CAPS" title="HB_TAG_MAX_SIGNED">HB_TAG_MAX_SIGNED</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-common.html#HB-LANGUAGE-INVALID:CAPS" title="HB_LANGUAGE_INVALID">HB_LANGUAGE_INVALID</a></td>
+</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-common.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen"> GBoxed
- <span class="lineart">├──</span> hb_language_t
+<pre class="screen"> <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html">GBoxed</a>
<span class="lineart">╰──</span> hb_user_data_key_t
- GEnum
+ <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a>
<span class="lineart">├──</span> hb_direction_t
<span class="lineart">╰──</span> hb_script_t
</pre>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-common.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-common.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
-<a name="HB-DIRECTION-REVERSE:CAPS"></a><h3>HB_DIRECTION_REVERSE()</h3>
-<pre class="programlisting">#define HB_DIRECTION_REVERSE(dir) ((hb_direction_t) (((unsigned int) (dir)) ^ 1))
-</pre>
-<p>
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="HB-LANGUAGE-INVALID:CAPS"></a><h3>HB_LANGUAGE_INVALID</h3>
-<pre class="programlisting">#define HB_LANGUAGE_INVALID ((hb_language_t) NULL)
-</pre>
-<p>
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="HB-TAG:CAPS"></a><h3>HB_TAG()</h3>
-<pre class="programlisting">#define HB_TAG(c1,c2,c3,c4) ((hb_tag_t)((((uint8_t)(c1))&lt;&lt;24)|(((uint8_t)(c2))&lt;&lt;16)|(((uint8_t)(c3))&lt;&lt;8)|((uint8_t)(c4))))
-</pre>
-<p>
-</p>
+<a name="hb-tag-from-string"></a><h3>hb_tag_from_string ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="returnvalue">hb_tag_t</span></a>
+hb_tag_from_string (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>,
+ <em class="parameter"><code><span class="type">int</span> len</code></em>);</pre>
+<div class="refsect3">
+<a name="hb-tag-from-string.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>str</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=len][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> uint8_t]</span></td>
+</tr></tbody>
+</table></div>
</div>
-<hr>
-<div class="refsect2">
-<a name="HB-UNTAG:CAPS"></a><h3>HB_UNTAG()</h3>
-<pre class="programlisting">#define HB_UNTAG(tag) ((uint8_t)((tag)&gt;&gt;24)), ((uint8_t)((tag)&gt;&gt;16)), ((uint8_t)((tag)&gt;&gt;8)), ((uint8_t)(tag))
-</pre>
-<p>
-</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
-<a name="hb-destroy-func-t"></a><h3>hb_destroy_func_t ()</h3>
+<a name="hb-tag-to-string"></a><h3>hb_tag_to_string ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
-<span class="c_punctuation">(</span>*hb_destroy_func_t<span class="c_punctuation">)</span> (<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
-<p>
-</p>
+hb_tag_to_string (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> tag</code></em>,
+ <em class="parameter"><code><span class="type">char</span> *buf</code></em>);</pre>
+<div class="refsect3">
+<a name="hb-tag-to-string.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> fixed-size=4]</span></td>
+</tr></tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-5.html#api-index-0.9.5">0.9.5</a></p>
</div>
<hr>
<div class="refsect2">
@@ -311,7 +318,7 @@
hb_direction_from_string (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>,
<em class="parameter"><code><span class="type">int</span> len</code></em>);</pre>
<div class="refsect3">
-<a name="idp17685104"></a><h4>Parameters</h4>
+<a name="hb-direction-from-string.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -321,15 +328,11 @@ hb_direction_from_string (<em class="parameter"><code>const <span class="type">c
<tbody><tr>
<td class="parameter_name"><p>str</p></td>
<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=len]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=len][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> uint8_t]</span></td>
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp17694608"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -337,20 +340,20 @@ hb_direction_from_string (<em class="parameter"><code>const <span class="type">c
<pre class="programlisting">const <span class="returnvalue">char</span> *
hb_direction_to_string (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-direction-t" title="enum hb_direction_t"><span class="type">hb_direction_t</span></a> direction</code></em>);</pre>
<div class="refsect3">
-<a name="idp17703840"></a><h4>Returns</h4>
+<a name="hb-direction-to-string.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
-<a name="hb-language-from-string"></a><h3>hb_language_from_string ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-language-t"><span class="returnvalue">hb_language_t</span></a>
-hb_language_from_string (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>,
- <em class="parameter"><code><span class="type">int</span> len</code></em>);</pre>
+<a name="hb-script-from-iso15924-tag"></a><h3>hb_script_from_iso15924_tag ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="returnvalue">hb_script_t</span></a>
+hb_script_from_iso15924_tag (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> tag</code></em>);</pre>
+<p>Converts an ISO 15924 script tag to a corresponding <a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a>.</p>
<div class="refsect3">
-<a name="idp17716368"></a><h4>Parameters</h4>
+<a name="hb-script-from-iso15924-tag.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -358,60 +361,66 @@ hb_language_from_string (<em class="parameter"><code>const <span class="type">ch
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
-<td class="parameter_name"><p>str</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=len]</span></td>
+<td class="parameter_name"><p>tag</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> representing an ISO 15924 tag.</p></td>
+<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
-<a name="idp17725872"></a><h4>Returns</h4>
-<p></p>
+<a name="hb-script-from-iso15924-tag.returns"></a><h4>Returns</h4>
+<p>An <a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> corresponding to the ISO 15924 tag.</p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
-<a name="hb-language-get-default"></a><h3>hb_language_get_default ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-language-t"><span class="returnvalue">hb_language_t</span></a>
-hb_language_get_default (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<div class="refsect3">
-<a name="idp17734384"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-language-to-string"></a><h3>hb_language_to_string ()</h3>
-<pre class="programlisting">const <span class="returnvalue">char</span> *
-hb_language_to_string (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-language-t"><span class="type">hb_language_t</span></a> language</code></em>);</pre>
+<a name="hb-script-from-string"></a><h3>hb_script_from_string ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="returnvalue">hb_script_t</span></a>
+hb_script_from_string (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>,
+ <em class="parameter"><code><span class="type">int</span> len</code></em>);</pre>
+<p>Converts a string <em class="parameter"><code>str</code></em>
+ representing an ISO 15924 script tag to a
+corresponding <a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a>. Shorthand for <a class="link" href="harfbuzz-hb-common.html#hb-tag-from-string" title="hb_tag_from_string ()"><code class="function">hb_tag_from_string()</code></a> then
+<a class="link" href="harfbuzz-hb-common.html#hb-script-from-iso15924-tag" title="hb_script_from_iso15924_tag ()"><code class="function">hb_script_from_iso15924_tag()</code></a>.</p>
<div class="refsect3">
-<a name="idp17743616"></a><h4>Returns</h4>
-<p>. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
-</div>
-<p class="since">Since 1.0</p>
+<a name="hb-script-from-string.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>str</p></td>
+<td class="parameter_description"><p> a string representing an
+ISO 15924 tag. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=len][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> uint8_t]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>len</p></td>
+<td class="parameter_description"><p>length of the <em class="parameter"><code>str</code></em>
+, or -1 if it is <code class="literal">NULL</code>-terminated.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
</div>
-<hr>
-<div class="refsect2">
-<a name="hb-script-from-iso15924-tag"></a><h3>hb_script_from_iso15924_tag ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="returnvalue">hb_script_t</span></a>
-hb_script_from_iso15924_tag (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> tag</code></em>);</pre>
<div class="refsect3">
-<a name="idp17754336"></a><h4>Returns</h4>
-<p></p>
+<a name="hb-script-from-string.returns"></a><h4>Returns</h4>
+<p>An <a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> corresponding to the ISO 15924 tag.</p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
-<a name="hb-script-from-string"></a><h3>hb_script_from_string ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="returnvalue">hb_script_t</span></a>
-hb_script_from_string (<em class="parameter"><code>const <span class="type">char</span> *s</code></em>,
- <em class="parameter"><code><span class="type">int</span> len</code></em>);</pre>
+<a name="hb-script-to-iso15924-tag"></a><h3>hb_script_to_iso15924_tag ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="returnvalue">hb_tag_t</span></a>
+hb_script_to_iso15924_tag (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> script</code></em>);</pre>
+<p>See <a class="link" href="harfbuzz-hb-common.html#hb-script-from-iso15924-tag" title="hb_script_from_iso15924_tag ()"><code class="function">hb_script_from_iso15924_tag()</code></a>.</p>
<div class="refsect3">
-<a name="idp17765200"></a><h4>Parameters</h4>
+<a name="hb-script-to-iso15924-tag.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -419,75 +428,73 @@ hb_script_from_string (<em class="parameter"><code>const <span class="type">char
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
-<td class="parameter_name"><p>s</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=len]</span></td>
+<td class="parameter_name"><p>script</p></td>
+<td class="parameter_description"><p>an <span class="type">hb_script_</span> to convert.</p></td>
+<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
-<a name="idp17774704"></a><h4>Returns</h4>
-<p></p>
+<a name="hb-script-to-iso15924-tag.returns"></a><h4>Returns</h4>
+<p>An <a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> representing an ISO 15924 script tag.</p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-script-get-horizontal-direction"></a><h3>hb_script_get_horizontal_direction ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-direction-t" title="enum hb_direction_t"><span class="returnvalue">hb_direction_t</span></a>
hb_script_get_horizontal_direction (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> script</code></em>);</pre>
-<div class="refsect3">
-<a name="idp17783824"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
-<a name="hb-script-to-iso15924-tag"></a><h3>hb_script_to_iso15924_tag ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="returnvalue">hb_tag_t</span></a>
-hb_script_to_iso15924_tag (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> script</code></em>);</pre>
-<div class="refsect3">
-<a name="idp17792944"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-tag-from-string"></a><h3>hb_tag_from_string ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="returnvalue">hb_tag_t</span></a>
-hb_tag_from_string (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>,
- <em class="parameter"><code><span class="type">int</span> len</code></em>);</pre>
+<a name="hb-language-from-string"></a><h3>hb_language_from_string ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="returnvalue">hb_language_t</span></a>
+hb_language_from_string (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>,
+ <em class="parameter"><code><span class="type">int</span> len</code></em>);</pre>
+<p>Converts <em class="parameter"><code>str</code></em>
+ representing an ISO 639 language code to the corresponding
+<a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="type">hb_language_t</span></a>.</p>
<div class="refsect3">
-<a name="idp17803760"></a><h4>Parameters</h4>
+<a name="hb-language-from-string.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
-<tbody><tr>
+<tbody>
+<tr>
<td class="parameter_name"><p>str</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=len]</span></td>
-</tr></tbody>
+<td class="parameter_description"><p> a string representing
+ISO 639 language code. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=len][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> uint8_t]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>len</p></td>
+<td class="parameter_description"><p>length of the <em class="parameter"><code>str</code></em>
+, or -1 if it is <code class="literal">NULL</code>-terminated.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
</table></div>
</div>
<div class="refsect3">
-<a name="idp17813264"></a><h4>Returns</h4>
-<p></p>
+<a name="hb-language-from-string.returns"></a><h4>Returns</h4>
+<p>The <a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="type">hb_language_t</span></a> corresponding to the ISO 639 language code. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
-<a name="hb-tag-to-string"></a><h3>hb_tag_to_string ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_tag_to_string (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> tag</code></em>,
- <em class="parameter"><code><span class="type">char</span> *buf</code></em>);</pre>
+<a name="hb-language-to-string"></a><h3>hb_language_to_string ()</h3>
+<pre class="programlisting">const <span class="returnvalue">char</span> *
+hb_language_to_string (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="type">hb_language_t</span></a> language</code></em>);</pre>
+<p>See <a class="link" href="harfbuzz-hb-common.html#hb-language-from-string" title="hb_language_from_string ()"><code class="function">hb_language_from_string()</code></a>.</p>
<div class="refsect3">
-<a name="idp17823904"></a><h4>Parameters</h4>
+<a name="hb-language-to-string.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -495,93 +502,106 @@ hb_tag_to_string (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
-<td class="parameter_name"><p>buf</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> fixed-size=4]</span></td>
+<td class="parameter_name"><p>language</p></td>
+<td class="parameter_description"><p>an <a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="type">hb_language_t</span></a> to convert.</p></td>
+<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<div class="refsect3">
+<a name="hb-language-to-string.returns"></a><h4>Returns</h4>
+<p>A <code class="literal">NULL</code>-terminated string representing the <em class="parameter"><code>language</code></em>
+. Must not be freed by
+the caller. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-language-get-default"></a><h3>hb_language_get_default ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="returnvalue">hb_language_t</span></a>
+hb_language_get_default (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<div class="refsect3">
+<a name="hb-language-get-default.returns"></a><h4>Returns</h4>
+<p>. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-destroy-func-t"></a><h3>hb_destroy_func_t ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+<span class="c_punctuation">(</span>*hb_destroy_func_t<span class="c_punctuation">)</span> (<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-TAG:CAPS"></a><h3>HB_TAG()</h3>
+<pre class="programlisting">#define HB_TAG(c1,c2,c3,c4) ((hb_tag_t)((((uint8_t)(c1))&lt;&lt;24)|(((uint8_t)(c2))&lt;&lt;16)|(((uint8_t)(c3))&lt;&lt;8)|((uint8_t)(c4))))
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-UNTAG:CAPS"></a><h3>HB_UNTAG()</h3>
+<pre class="programlisting">#define HB_UNTAG(tag) ((uint8_t)((tag)&gt;&gt;24)), ((uint8_t)((tag)&gt;&gt;16)), ((uint8_t)((tag)&gt;&gt;8)), ((uint8_t)(tag))
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-DIRECTION-REVERSE:CAPS"></a><h3>HB_DIRECTION_REVERSE()</h3>
+<pre class="programlisting">#define HB_DIRECTION_REVERSE(dir) ((hb_direction_t) (((unsigned int) (dir)) ^ 1))
+</pre>
</div>
<hr>
<div class="refsect2">
<a name="HB-DIRECTION-IS-BACKWARD:CAPS"></a><h3>HB_DIRECTION_IS_BACKWARD()</h3>
<pre class="programlisting">#define HB_DIRECTION_IS_BACKWARD(dir) ((((unsigned int) (dir)) &amp; ~2U) == 5)
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-DIRECTION-IS-FORWARD:CAPS"></a><h3>HB_DIRECTION_IS_FORWARD()</h3>
<pre class="programlisting">#define HB_DIRECTION_IS_FORWARD(dir) ((((unsigned int) (dir)) &amp; ~2U) == 4)
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-DIRECTION-IS-HORIZONTAL:CAPS"></a><h3>HB_DIRECTION_IS_HORIZONTAL()</h3>
<pre class="programlisting">#define HB_DIRECTION_IS_HORIZONTAL(dir) ((((unsigned int) (dir)) &amp; ~1U) == 4)
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-DIRECTION-IS-VALID:CAPS"></a><h3>HB_DIRECTION_IS_VALID()</h3>
<pre class="programlisting">#define HB_DIRECTION_IS_VALID(dir) ((((unsigned int) (dir)) &amp; ~3U) == 4)
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-DIRECTION-IS-VERTICAL:CAPS"></a><h3>HB_DIRECTION_IS_VERTICAL()</h3>
<pre class="programlisting">#define HB_DIRECTION_IS_VERTICAL(dir) ((((unsigned int) (dir)) &amp; ~1U) == 6)
</pre>
-<p>
-</p>
</div>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-common.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
-<a name="HB-TAG-NONE:CAPS"></a><h3>HB_TAG_NONE</h3>
-<pre class="programlisting">#define HB_TAG_NONE HB_TAG(0,0,0,0)
-</pre>
-<p>
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="HB-TAG-MAX:CAPS"></a><h3>HB_TAG_MAX</h3>
-<pre class="programlisting">#define HB_TAG_MAX HB_TAG(0xff,0xff,0xff,0xff)
-</pre>
-</div>
-<hr>
-<div class="refsect2">
<a name="hb-bool-t"></a><h3>hb_bool_t</h3>
<pre class="programlisting">typedef int hb_bool_t;
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="hb-codepoint-t"></a><h3>hb_codepoint_t</h3>
<pre class="programlisting">typedef uint32_t hb_codepoint_t;
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="hb-direction-t"></a><h3>enum hb_direction_t</h3>
-<p>
-</p>
<div class="refsect3">
-<a name="idp17879968"></a><h4>Members</h4>
+<a name="hb-direction-t.members"></a><h4>Members</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="300px" class="enum_members_name">
@@ -591,27 +611,37 @@ hb_tag_to_string (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
<tbody>
<tr>
<td class="enum_member_name"><p><a name="HB-DIRECTION-INVALID:CAPS"></a>HB_DIRECTION_INVALID</p></td>
-<td class="enum_member_description"> </td>
+<td class="enum_member_description">
+<p>Initial, unset direction.</p>
+</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-DIRECTION-LTR:CAPS"></a>HB_DIRECTION_LTR</p></td>
-<td class="enum_member_description"> </td>
+<td class="enum_member_description">
+<p>Text is set horizontally from left to right.</p>
+</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-DIRECTION-RTL:CAPS"></a>HB_DIRECTION_RTL</p></td>
-<td class="enum_member_description"> </td>
+<td class="enum_member_description">
+<p>Text is set horizontally from right to left.</p>
+</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-DIRECTION-TTB:CAPS"></a>HB_DIRECTION_TTB</p></td>
-<td class="enum_member_description"> </td>
+<td class="enum_member_description">
+<p>Text is set vertically from top to bottom.</p>
+</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-DIRECTION-BTT:CAPS"></a>HB_DIRECTION_BTT</p></td>
-<td class="enum_member_description"> </td>
+<td class="enum_member_description">
+<p>Text is set vertically from bottom to top.</p>
+</td>
<td class="enum_member_annotations"> </td>
</tr>
</tbody>
@@ -623,32 +653,30 @@ hb_tag_to_string (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
<a name="hb-language-t"></a><h3>hb_language_t</h3>
<pre class="programlisting">typedef const struct hb_language_impl_t *hb_language_t;
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="hb-mask-t"></a><h3>hb_mask_t</h3>
<pre class="programlisting">typedef uint32_t hb_mask_t;
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="hb-position-t"></a><h3>hb_position_t</h3>
<pre class="programlisting">typedef int32_t hb_position_t;
</pre>
-<p>
-</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-tag-t"></a><h3>hb_tag_t</h3>
+<pre class="programlisting">typedef uint32_t hb_tag_t;
+</pre>
</div>
<hr>
<div class="refsect2">
<a name="hb-script-t"></a><h3>enum hb_script_t</h3>
-<p>
-</p>
<div class="refsect3">
-<a name="idp17918336"></a><h4>Members</h4>
+<a name="hb-script-t.members"></a><h4>Members</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="300px" class="enum_members_name">
@@ -658,518 +686,518 @@ hb_tag_to_string (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
<tbody>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-COMMON:CAPS"></a>HB_SCRIPT_COMMON</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-INHERITED:CAPS"></a>HB_SCRIPT_INHERITED</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-UNKNOWN:CAPS"></a>HB_SCRIPT_UNKNOWN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-ARABIC:CAPS"></a>HB_SCRIPT_ARABIC</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-ARMENIAN:CAPS"></a>HB_SCRIPT_ARMENIAN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-BENGALI:CAPS"></a>HB_SCRIPT_BENGALI</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-CYRILLIC:CAPS"></a>HB_SCRIPT_CYRILLIC</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-DEVANAGARI:CAPS"></a>HB_SCRIPT_DEVANAGARI</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-GEORGIAN:CAPS"></a>HB_SCRIPT_GEORGIAN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-GREEK:CAPS"></a>HB_SCRIPT_GREEK</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-GUJARATI:CAPS"></a>HB_SCRIPT_GUJARATI</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-GURMUKHI:CAPS"></a>HB_SCRIPT_GURMUKHI</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-HANGUL:CAPS"></a>HB_SCRIPT_HANGUL</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-HAN:CAPS"></a>HB_SCRIPT_HAN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-HEBREW:CAPS"></a>HB_SCRIPT_HEBREW</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-HIRAGANA:CAPS"></a>HB_SCRIPT_HIRAGANA</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-KANNADA:CAPS"></a>HB_SCRIPT_KANNADA</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-KATAKANA:CAPS"></a>HB_SCRIPT_KATAKANA</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-LAO:CAPS"></a>HB_SCRIPT_LAO</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-LATIN:CAPS"></a>HB_SCRIPT_LATIN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-MALAYALAM:CAPS"></a>HB_SCRIPT_MALAYALAM</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-ORIYA:CAPS"></a>HB_SCRIPT_ORIYA</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-TAMIL:CAPS"></a>HB_SCRIPT_TAMIL</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-TELUGU:CAPS"></a>HB_SCRIPT_TELUGU</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-THAI:CAPS"></a>HB_SCRIPT_THAI</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-TIBETAN:CAPS"></a>HB_SCRIPT_TIBETAN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-BOPOMOFO:CAPS"></a>HB_SCRIPT_BOPOMOFO</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-BRAILLE:CAPS"></a>HB_SCRIPT_BRAILLE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-CANADIAN-SYLLABICS:CAPS"></a>HB_SCRIPT_CANADIAN_SYLLABICS</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-CHEROKEE:CAPS"></a>HB_SCRIPT_CHEROKEE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-ETHIOPIC:CAPS"></a>HB_SCRIPT_ETHIOPIC</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-KHMER:CAPS"></a>HB_SCRIPT_KHMER</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-MONGOLIAN:CAPS"></a>HB_SCRIPT_MONGOLIAN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-MYANMAR:CAPS"></a>HB_SCRIPT_MYANMAR</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-OGHAM:CAPS"></a>HB_SCRIPT_OGHAM</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-RUNIC:CAPS"></a>HB_SCRIPT_RUNIC</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-SINHALA:CAPS"></a>HB_SCRIPT_SINHALA</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-SYRIAC:CAPS"></a>HB_SCRIPT_SYRIAC</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-THAANA:CAPS"></a>HB_SCRIPT_THAANA</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-YI:CAPS"></a>HB_SCRIPT_YI</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-DESERET:CAPS"></a>HB_SCRIPT_DESERET</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-GOTHIC:CAPS"></a>HB_SCRIPT_GOTHIC</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-OLD-ITALIC:CAPS"></a>HB_SCRIPT_OLD_ITALIC</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-BUHID:CAPS"></a>HB_SCRIPT_BUHID</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-HANUNOO:CAPS"></a>HB_SCRIPT_HANUNOO</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-TAGALOG:CAPS"></a>HB_SCRIPT_TAGALOG</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-TAGBANWA:CAPS"></a>HB_SCRIPT_TAGBANWA</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-CYPRIOT:CAPS"></a>HB_SCRIPT_CYPRIOT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-LIMBU:CAPS"></a>HB_SCRIPT_LIMBU</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-LINEAR-B:CAPS"></a>HB_SCRIPT_LINEAR_B</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-OSMANYA:CAPS"></a>HB_SCRIPT_OSMANYA</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-SHAVIAN:CAPS"></a>HB_SCRIPT_SHAVIAN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-TAI-LE:CAPS"></a>HB_SCRIPT_TAI_LE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-UGARITIC:CAPS"></a>HB_SCRIPT_UGARITIC</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-BUGINESE:CAPS"></a>HB_SCRIPT_BUGINESE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-COPTIC:CAPS"></a>HB_SCRIPT_COPTIC</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-GLAGOLITIC:CAPS"></a>HB_SCRIPT_GLAGOLITIC</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-KHAROSHTHI:CAPS"></a>HB_SCRIPT_KHAROSHTHI</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-NEW-TAI-LUE:CAPS"></a>HB_SCRIPT_NEW_TAI_LUE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-OLD-PERSIAN:CAPS"></a>HB_SCRIPT_OLD_PERSIAN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-SYLOTI-NAGRI:CAPS"></a>HB_SCRIPT_SYLOTI_NAGRI</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-TIFINAGH:CAPS"></a>HB_SCRIPT_TIFINAGH</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-BALINESE:CAPS"></a>HB_SCRIPT_BALINESE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-CUNEIFORM:CAPS"></a>HB_SCRIPT_CUNEIFORM</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-NKO:CAPS"></a>HB_SCRIPT_NKO</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-PHAGS-PA:CAPS"></a>HB_SCRIPT_PHAGS_PA</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-PHOENICIAN:CAPS"></a>HB_SCRIPT_PHOENICIAN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-CARIAN:CAPS"></a>HB_SCRIPT_CARIAN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-CHAM:CAPS"></a>HB_SCRIPT_CHAM</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-KAYAH-LI:CAPS"></a>HB_SCRIPT_KAYAH_LI</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-LEPCHA:CAPS"></a>HB_SCRIPT_LEPCHA</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-LYCIAN:CAPS"></a>HB_SCRIPT_LYCIAN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-LYDIAN:CAPS"></a>HB_SCRIPT_LYDIAN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-OL-CHIKI:CAPS"></a>HB_SCRIPT_OL_CHIKI</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-REJANG:CAPS"></a>HB_SCRIPT_REJANG</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-SAURASHTRA:CAPS"></a>HB_SCRIPT_SAURASHTRA</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-SUNDANESE:CAPS"></a>HB_SCRIPT_SUNDANESE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-VAI:CAPS"></a>HB_SCRIPT_VAI</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-AVESTAN:CAPS"></a>HB_SCRIPT_AVESTAN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-BAMUM:CAPS"></a>HB_SCRIPT_BAMUM</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-EGYPTIAN-HIEROGLYPHS:CAPS"></a>HB_SCRIPT_EGYPTIAN_HIEROGLYPHS</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-IMPERIAL-ARAMAIC:CAPS"></a>HB_SCRIPT_IMPERIAL_ARAMAIC</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-INSCRIPTIONAL-PAHLAVI:CAPS"></a>HB_SCRIPT_INSCRIPTIONAL_PAHLAVI</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-INSCRIPTIONAL-PARTHIAN:CAPS"></a>HB_SCRIPT_INSCRIPTIONAL_PARTHIAN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-JAVANESE:CAPS"></a>HB_SCRIPT_JAVANESE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-KAITHI:CAPS"></a>HB_SCRIPT_KAITHI</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-LISU:CAPS"></a>HB_SCRIPT_LISU</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-MEETEI-MAYEK:CAPS"></a>HB_SCRIPT_MEETEI_MAYEK</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-OLD-SOUTH-ARABIAN:CAPS"></a>HB_SCRIPT_OLD_SOUTH_ARABIAN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-OLD-TURKIC:CAPS"></a>HB_SCRIPT_OLD_TURKIC</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-SAMARITAN:CAPS"></a>HB_SCRIPT_SAMARITAN</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-TAI-THAM:CAPS"></a>HB_SCRIPT_TAI_THAM</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-TAI-VIET:CAPS"></a>HB_SCRIPT_TAI_VIET</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-BATAK:CAPS"></a>HB_SCRIPT_BATAK</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-BRAHMI:CAPS"></a>HB_SCRIPT_BRAHMI</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-MANDAIC:CAPS"></a>HB_SCRIPT_MANDAIC</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-CHAKMA:CAPS"></a>HB_SCRIPT_CHAKMA</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-MEROITIC-CURSIVE:CAPS"></a>HB_SCRIPT_MEROITIC_CURSIVE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-MEROITIC-HIEROGLYPHS:CAPS"></a>HB_SCRIPT_MEROITIC_HIEROGLYPHS</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-MIAO:CAPS"></a>HB_SCRIPT_MIAO</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-SHARADA:CAPS"></a>HB_SCRIPT_SHARADA</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-SORA-SOMPENG:CAPS"></a>HB_SCRIPT_SORA_SOMPENG</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-TAKRI:CAPS"></a>HB_SCRIPT_TAKRI</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-BASSA-VAH:CAPS"></a>HB_SCRIPT_BASSA_VAH</p></td>
@@ -1287,9 +1315,39 @@ hb_tag_to_string (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
<td> </td>
</tr>
<tr>
+<td class="enum_member_name"><p><a name="HB-SCRIPT-AHOM:CAPS"></a>HB_SCRIPT_AHOM</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-SCRIPT-ANATOLIAN-HIEROGLYPHS:CAPS"></a>HB_SCRIPT_ANATOLIAN_HIEROGLYPHS</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-SCRIPT-HATRAN:CAPS"></a>HB_SCRIPT_HATRAN</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-SCRIPT-MULTANI:CAPS"></a>HB_SCRIPT_MULTANI</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-SCRIPT-OLD-HUNGARIAN:CAPS"></a>HB_SCRIPT_OLD_HUNGARIAN</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
+<td class="enum_member_name"><p><a name="HB-SCRIPT-SIGNWRITING:CAPS"></a>HB_SCRIPT_SIGNWRITING</p></td>
+<td> </td>
+<td> </td>
+</tr>
+<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-INVALID:CAPS"></a>HB_SCRIPT_INVALID</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-SCRIPT-MAX-VALUE:CAPS"></a>_HB_SCRIPT_MAX_VALUE</p></td>
@@ -1307,31 +1365,42 @@ hb_tag_to_string (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
</div>
<hr>
<div class="refsect2">
-<a name="hb-tag-t"></a><h3>hb_tag_t</h3>
-<pre class="programlisting">typedef uint32_t hb_tag_t;
-</pre>
-<p>
-</p>
-</div>
-<hr>
-<div class="refsect2">
<a name="hb-user-data-key-t-struct"></a><h3>hb_user_data_key_t</h3>
<pre class="programlisting">typedef struct {
} hb_user_data_key_t;
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="hb-var-int-t"></a><h3>hb_var_int_t</h3>
-<p>
-</p>
</div>
+<hr>
+<div class="refsect2">
+<a name="HB-TAG-NONE:CAPS"></a><h3>HB_TAG_NONE</h3>
+<pre class="programlisting">#define HB_TAG_NONE HB_TAG(0,0,0,0)
+</pre>
</div>
+<hr>
+<div class="refsect2">
+<a name="HB-TAG-MAX:CAPS"></a><h3>HB_TAG_MAX</h3>
+<pre class="programlisting">#define HB_TAG_MAX HB_TAG(0xff,0xff,0xff,0xff)
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-TAG-MAX-SIGNED:CAPS"></a><h3>HB_TAG_MAX_SIGNED</h3>
+<pre class="programlisting">#define HB_TAG_MAX_SIGNED HB_TAG(0x7f,0xff,0xff,0xff)
+</pre>
</div>
-<div class="footer">
<hr>
- Generated by GTK-Doc V1.20.1</div>
+<div class="refsect2">
+<a name="HB-LANGUAGE-INVALID:CAPS"></a><h3>HB_LANGUAGE_INVALID</h3>
+<pre class="programlisting">#define HB_LANGUAGE_INVALID ((hb_language_t) NULL)
+</pre>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-coretext.html b/docs/html/harfbuzz-hb-coretext.html
index 8d3ab15..68615e0 100644
--- a/docs/reference/html/harfbuzz-hb-coretext.html
+++ b/docs/html/harfbuzz-hb-coretext.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-coretext</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
+<title>hb-coretext: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
<link rel="prev" href="harfbuzz-hb-uniscribe.html" title="hb-uniscribe">
<link rel="next" href="harfbuzz-hb-gobject.html" title="hb-gobject">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -18,7 +18,7 @@
<a href="#harfbuzz-hb-coretext.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb-uniscribe.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-gobject.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
@@ -87,8 +87,6 @@
</div>
<div class="refsect1">
<a name="harfbuzz-hb-coretext.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-coretext.functions_details"></a><h2>Functions</h2>
@@ -102,24 +100,12 @@ hb_coretext_face_create (<em class="parameter"><code><span class="type">CGFontRe
<a name="hb-coretext-face-get-cg-font"></a><h3>hb_coretext_face_get_cg_font ()</h3>
<pre class="programlisting"><span class="returnvalue">CGFontRef</span>
hb_coretext_face_get_cg_font (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp14032320"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
<a name="hb-coretext-font-get-ct-font"></a><h3>hb_coretext_font_get_ct_font ()</h3>
<pre class="programlisting"><span class="returnvalue">CTFontRef</span>
hb_coretext_font_get_ct_font (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp19308640"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
</div>
<div class="refsect1">
@@ -138,7 +124,6 @@ hb_coretext_font_get_ct_font (<em class="parameter"><code><a class="link" href="
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-deprecated.html b/docs/html/harfbuzz-hb-deprecated.html
index 09961c1..13beba0 100644
--- a/docs/reference/html/harfbuzz-hb-deprecated.html
+++ b/docs/html/harfbuzz-hb-deprecated.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-deprecated</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
+<title>hb-deprecated: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
<link rel="prev" href="harfbuzz-hb-version.html" title="hb-version">
<link rel="next" href="harfbuzz-hb-set.html" title="hb-set">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -18,7 +18,7 @@
<a href="#harfbuzz-hb-deprecated.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb-version.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-set.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
@@ -56,11 +56,10 @@
</div>
<div class="refsect1">
<a name="harfbuzz-hb-deprecated.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-deprecated.functions_details"></a><h2>Functions</h2>
+<p></p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-deprecated.other_details"></a><h2>Types and Values</h2>
@@ -69,8 +68,6 @@
<pre class="programlisting">#define HB_BUFFER_FLAGS_DEFAULT HB_BUFFER_FLAG_DEFAULT
</pre>
<div class="warning"><p><code class="literal">HB_BUFFER_FLAGS_DEFAULT</code> is deprecated and should not be used in newly-written code.</p></div>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
@@ -78,8 +75,6 @@
<pre class="programlisting">#define HB_BUFFER_SERIALIZE_FLAGS_DEFAULT HB_BUFFER_SERIALIZE_FLAG_DEFAULT
</pre>
<div class="warning"><p><code class="literal">HB_BUFFER_SERIALIZE_FLAGS_DEFAULT</code> is deprecated and should not be used in newly-written code.</p></div>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
@@ -87,13 +82,10 @@
<pre class="programlisting">#define HB_SCRIPT_CANADIAN_ABORIGINAL HB_SCRIPT_CANADIAN_SYLLABICS
</pre>
<div class="warning"><p><code class="literal">HB_SCRIPT_CANADIAN_ABORIGINAL</code> is deprecated and should not be used in newly-written code.</p></div>
-<p>
-</p>
</div>
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-face.html b/docs/html/harfbuzz-hb-face.html
index dc31c55..ddc16d0 100644
--- a/docs/reference/html/harfbuzz-hb-face.html
+++ b/docs/html/harfbuzz-hb-face.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-face</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
+<title>hb-face: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
<link rel="prev" href="harfbuzz-hb-blob.html" title="hb-blob">
<link rel="next" href="harfbuzz-hb-font.html" title="hb-font">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -19,7 +19,7 @@
<a href="#harfbuzz-hb-face.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb-blob.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-font.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
@@ -191,14 +191,12 @@
</div>
<div class="refsect1">
<a name="harfbuzz-hb-face.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen"> GBoxed
+<pre class="screen"> <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html">GBoxed</a>
<span class="lineart">╰──</span> hb_face_t
</pre>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-face.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-face.functions_details"></a><h2>Functions</h2>
@@ -207,12 +205,13 @@
<pre class="programlisting"><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="returnvalue">hb_face_t</span></a> *
hb_face_create (<em class="parameter"><code><a class="link" href="harfbuzz-hb-blob.html#hb-blob-t"><span class="type">hb_blob_t</span></a> *blob</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> index</code></em>);</pre>
-<p>
-</p>
+<p><span class="annotation">[Xconstructor]</span></p>
<div class="refsect3">
-<a name="idp20616992"></a><h4>Returns</h4>
-<p></p>
+<a name="hb-face-create.returns"></a><h4>Returns</h4>
+<p>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -222,7 +221,7 @@ hb_face_create_for_tables (<em class="parameter"><code><a class="link" href="har
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp20628080"></a><h4>Parameters</h4>
+<a name="hb-face-create-for-tables.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -237,19 +236,19 @@ hb_face_create_for_tables (<em class="parameter"><code><a class="link" href="har
</table></div>
</div>
<div class="refsect3">
-<a name="idp22848528"></a><h4>Returns</h4>
+<a name="hb-face-create-for-tables.returns"></a><h4>Returns</h4>
<p> (transfer full)</p>
-<p></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-face-destroy"></a><h3>hb_face_destroy ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
hb_face_destroy (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp22856752"></a><h4>Parameters</h4>
+<a name="hb-face-destroy.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -263,7 +262,7 @@ hb_face_destroy (<em class="parameter"><code><a class="link" href="harfbuzz-hb-f
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -271,11 +270,10 @@ hb_face_destroy (<em class="parameter"><code><a class="link" href="harfbuzz-hb-f
<pre class="programlisting"><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="returnvalue">hb_face_t</span></a> *
hb_face_get_empty (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<div class="refsect3">
-<a name="idp22870240"></a><h4>Returns</h4>
+<a name="hb-face-get-empty.returns"></a><h4>Returns</h4>
<p> (transfer full)</p>
-<p></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -283,7 +281,7 @@ hb_face_get_empty (<em class="parameter"><code><span class="type">void</span></c
<pre class="programlisting">unsigned <span class="returnvalue">int</span>
hb_face_get_glyph_count (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>);</pre>
<div class="refsect3">
-<a name="idp22878608"></a><h4>Parameters</h4>
+<a name="hb-face-get-glyph-count.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -297,11 +295,7 @@ hb_face_get_glyph_count (<em class="parameter"><code><a class="link" href="harfb
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp22886112"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -309,7 +303,7 @@ hb_face_get_glyph_count (<em class="parameter"><code><a class="link" href="harfb
<pre class="programlisting">unsigned <span class="returnvalue">int</span>
hb_face_get_index (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>);</pre>
<div class="refsect3">
-<a name="idp22894048"></a><h4>Parameters</h4>
+<a name="hb-face-get-index.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -323,11 +317,7 @@ hb_face_get_index (<em class="parameter"><code><a class="link" href="harfbuzz-hb
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp22901552"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -335,7 +325,7 @@ hb_face_get_index (<em class="parameter"><code><a class="link" href="harfbuzz-hb
<pre class="programlisting">unsigned <span class="returnvalue">int</span>
hb_face_get_upem (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>);</pre>
<div class="refsect3">
-<a name="idp22909488"></a><h4>Parameters</h4>
+<a name="hb-face-get-upem.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -349,11 +339,7 @@ hb_face_get_upem (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp18604560"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -361,8 +347,9 @@ hb_face_get_upem (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
<pre class="programlisting"><span class="returnvalue">void</span> *
hb_face_get_user_data (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-user-data-key-t"><span class="type">hb_user_data_key_t</span></a> *key</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp15960320"></a><h4>Parameters</h4>
+<a name="hb-face-get-user-data.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -377,11 +364,11 @@ hb_face_get_user_data (<em class="parameter"><code><a class="link" href="harfbuz
</table></div>
</div>
<div class="refsect3">
-<a name="idp22913232"></a><h4>Returns</h4>
+<a name="hb-face-get-user-data.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -389,7 +376,7 @@ hb_face_get_user_data (<em class="parameter"><code><a class="link" href="harfbuz
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
hb_face_is_immutable (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>);</pre>
<div class="refsect3">
-<a name="idp22920864"></a><h4>Parameters</h4>
+<a name="hb-face-is-immutable.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -403,11 +390,7 @@ hb_face_is_immutable (<em class="parameter"><code><a class="link" href="harfbuzz
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp22926912"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -415,7 +398,7 @@ hb_face_is_immutable (<em class="parameter"><code><a class="link" href="harfbuzz
<pre class="programlisting"><span class="returnvalue">void</span>
hb_face_make_immutable (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>);</pre>
<div class="refsect3">
-<a name="idp22933248"></a><h4>Parameters</h4>
+<a name="hb-face-make-immutable.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -429,15 +412,16 @@ hb_face_make_immutable (<em class="parameter"><code><a class="link" href="harfbu
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-face-reference"></a><h3>hb_face_reference ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="returnvalue">hb_face_t</span></a> *
hb_face_reference (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp22944480"></a><h4>Parameters</h4>
+<a name="hb-face-reference.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -451,11 +435,7 @@ hb_face_reference (<em class="parameter"><code><a class="link" href="harfbuzz-hb
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp22950528"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -463,7 +443,7 @@ hb_face_reference (<em class="parameter"><code><a class="link" href="harfbuzz-hb
<pre class="programlisting"><a class="link" href="harfbuzz-hb-blob.html#hb-blob-t"><span class="returnvalue">hb_blob_t</span></a> *
hb_face_reference_blob (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>);</pre>
<div class="refsect3">
-<a name="idp22958208"></a><h4>Parameters</h4>
+<a name="hb-face-reference-blob.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -478,11 +458,11 @@ hb_face_reference_blob (<em class="parameter"><code><a class="link" href="harfbu
</table></div>
</div>
<div class="refsect3">
-<a name="idp22965712"></a><h4>Returns</h4>
+<a name="hb-face-reference-blob.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -491,7 +471,7 @@ hb_face_reference_blob (<em class="parameter"><code><a class="link" href="harfbu
hb_face_reference_table (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> tag</code></em>);</pre>
<div class="refsect3">
-<a name="idp22976288"></a><h4>Parameters</h4>
+<a name="hb-face-reference-table.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -506,11 +486,11 @@ hb_face_reference_table (<em class="parameter"><code><a class="link" href="harfb
</table></div>
</div>
<div class="refsect3">
-<a name="idp22983792"></a><h4>Returns</h4>
+<a name="hb-face-reference-table.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -519,7 +499,7 @@ hb_face_reference_table (<em class="parameter"><code><a class="link" href="harfb
hb_face_set_glyph_count (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> glyph_count</code></em>);</pre>
<div class="refsect3">
-<a name="idp22994512"></a><h4>Parameters</h4>
+<a name="hb-face-set-glyph-count.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -533,7 +513,7 @@ hb_face_set_glyph_count (<em class="parameter"><code><a class="link" href="harfb
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -542,7 +522,7 @@ hb_face_set_glyph_count (<em class="parameter"><code><a class="link" href="harfb
hb_face_set_index (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> index</code></em>);</pre>
<div class="refsect3">
-<a name="idp23010064"></a><h4>Parameters</h4>
+<a name="hb-face-set-index.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -556,7 +536,7 @@ hb_face_set_index (<em class="parameter"><code><a class="link" href="harfbuzz-hb
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -565,7 +545,7 @@ hb_face_set_index (<em class="parameter"><code><a class="link" href="harfbuzz-hb
hb_face_set_upem (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> upem</code></em>);</pre>
<div class="refsect3">
-<a name="idp23025616"></a><h4>Parameters</h4>
+<a name="hb-face-set-upem.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -579,7 +559,7 @@ hb_face_set_upem (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -590,8 +570,9 @@ hb_face_set_user_data (<em class="parameter"><code><a class="link" href="harfbuz
<em class="parameter"><code><span class="type">void</span> *data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="type">hb_bool_t</span></a> replace</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp23045152"></a><h4>Parameters</h4>
+<a name="hb-face-set-user-data.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -605,11 +586,7 @@ hb_face_set_user_data (<em class="parameter"><code><a class="link" href="harfbuz
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp23052656"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
</div>
<div class="refsect1">
@@ -618,13 +595,10 @@ hb_face_set_user_data (<em class="parameter"><code><a class="link" href="harfbuz
<a name="hb-face-t"></a><h3>hb_face_t</h3>
<pre class="programlisting">typedef struct hb_face_t hb_face_t;
</pre>
-<p>
-</p>
</div>
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-font.html b/docs/html/harfbuzz-hb-font.html
index 9596d54..1a81a44 100644
--- a/docs/reference/html/harfbuzz-hb-font.html
+++ b/docs/html/harfbuzz-hb-font.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-font</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
+<title>hb-font: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
<link rel="prev" href="harfbuzz-hb-face.html" title="hb-face">
-<link rel="next" href="harfbuzz-hb-shape.html" title="hb-shape">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<link rel="next" href="harfbuzz-Shaping.html" title="Shaping">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -19,9 +19,9 @@
<a href="#harfbuzz-hb-font.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb-face.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="harfbuzz-hb-shape.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<td><a accesskey="n" href="harfbuzz-Shaping.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="harfbuzz-hb-font"></a><div class="titlepage"></div>
@@ -560,6 +560,62 @@
<span class="c_punctuation">(</span><a class="link" href="harfbuzz-hb-font.html#hb-reference-table-func-t" title="hb_reference_table_func_t ()">*hb_reference_table_func_t</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
</td>
</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-font-h-extents-func" title="hb_font_funcs_set_font_h_extents_func ()">hb_font_funcs_set_font_h_extents_func</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-font-v-extents-func" title="hb_font_funcs_set_font_v_extents_func ()">hb_font_funcs_set_font_v_extents_func</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-extents-for-direction" title="hb_font_get_extents_for_direction ()">hb_font_get_extents_for_direction</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="harfbuzz-hb-font.html#hb-font-get-font-extents-func-t" title="hb_font_get_font_extents_func_t ()">*hb_font_get_font_extents_func_t</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-h-extents" title="hb_font_get_h_extents ()">hb_font_get_h_extents</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-font.html#hb-font-get-v-extents" title="hb_font_get_v_extents ()">hb_font_get_v_extents</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-font.html#hb-font-set-parent" title="hb_font_set_parent ()">hb_font_set_parent</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
</tbody>
</table></div>
</div>
@@ -603,20 +659,26 @@
<td class="typedef_keyword">typedef</td>
<td class="function_name"><a class="link" href="harfbuzz-hb-font.html#hb-font-t">hb_font_t</a></td>
</tr>
+<tr>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-font.html#hb-font-get-font-h-extents-func-t" title="hb_font_get_font_h_extents_func_t">hb_font_get_font_h_extents_func_t</a></td>
+</tr>
+<tr>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-font.html#hb-font-get-font-v-extents-func-t" title="hb_font_get_font_v_extents_func_t">hb_font_get_font_v_extents_func_t</a></td>
+</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-font.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen"> GBoxed
+<pre class="screen"> <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html">GBoxed</a>
<span class="lineart">├──</span> hb_font_funcs_t
<span class="lineart">╰──</span> hb_font_t
</pre>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-font.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-font.functions_details"></a><h2>Functions</h2>
@@ -630,7 +692,7 @@ hb_font_add_glyph_origin_for_direction
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *x</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *y</code></em>);</pre>
<div class="refsect3">
-<a name="idp24645120"></a><h4>Parameters</h4>
+<a name="hb-font-add-glyph-origin-for-direction.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -656,19 +718,35 @@ hb_font_add_glyph_origin_for_direction
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-create"></a><h3>hb_font_create ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="returnvalue">hb_font_t</span></a> *
hb_font_create (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>);</pre>
-<p>
-</p>
+<p><span class="annotation">[Xconstructor]</span></p>
+<div class="refsect3">
+<a name="hb-font-create.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>face</p></td>
+<td class="parameter_description"><p>a face.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
<div class="refsect3">
-<a name="idp24665728"></a><h4>Returns</h4>
-<p></p>
+<a name="hb-font-create.returns"></a><h4>Returns</h4>
+<p>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -676,7 +754,7 @@ hb_font_create (<em class="parameter"><code><a class="link" href="harfbuzz-hb-fa
<pre class="programlisting"><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="returnvalue">hb_font_t</span></a> *
hb_font_create_sub_font (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *parent</code></em>);</pre>
<div class="refsect3">
-<a name="idp24672976"></a><h4>Parameters</h4>
+<a name="hb-font-create-sub-font.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -691,19 +769,20 @@ hb_font_create_sub_font (<em class="parameter"><code><a class="link" href="harfb
</table></div>
</div>
<div class="refsect3">
-<a name="idp24680480"></a><h4>Returns</h4>
+<a name="hb-font-create-sub-font.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-destroy"></a><h3>hb_font_destroy ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
hb_font_destroy (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp24689680"></a><h4>Parameters</h4>
+<a name="hb-font-destroy.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -717,27 +796,29 @@ hb_font_destroy (<em class="parameter"><code><a class="link" href="harfbuzz-hb-f
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-funcs-create"></a><h3>hb_font_funcs_create ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t"><span class="returnvalue">hb_font_funcs_t</span></a> *
hb_font_funcs_create (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-</p>
+<p><span class="annotation">[Xconstructor]</span></p>
<div class="refsect3">
-<a name="idp24703088"></a><h4>Returns</h4>
-<p></p>
+<a name="hb-font-funcs-create.returns"></a><h4>Returns</h4>
+<p>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-funcs-destroy"></a><h3>hb_font_funcs_destroy ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
hb_font_funcs_destroy (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t"><span class="type">hb_font_funcs_t</span></a> *ffuncs</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp24710336"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-destroy.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -751,7 +832,7 @@ hb_font_funcs_destroy (<em class="parameter"><code><a class="link" href="harfbuz
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -759,11 +840,11 @@ hb_font_funcs_destroy (<em class="parameter"><code><a class="link" href="harfbuz
<pre class="programlisting"><a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t"><span class="returnvalue">hb_font_funcs_t</span></a> *
hb_font_funcs_get_empty (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<div class="refsect3">
-<a name="idp24723824"></a><h4>Returns</h4>
+<a name="hb-font-funcs-get-empty.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -771,8 +852,9 @@ hb_font_funcs_get_empty (<em class="parameter"><code><span class="type">void</sp
<pre class="programlisting"><span class="returnvalue">void</span> *
hb_font_funcs_get_user_data (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t"><span class="type">hb_font_funcs_t</span></a> *ffuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-user-data-key-t"><span class="type">hb_user_data_key_t</span></a> *key</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp24734400"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-get-user-data.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -787,11 +869,11 @@ hb_font_funcs_get_user_data (<em class="parameter"><code><a class="link" href="h
</table></div>
</div>
<div class="refsect3">
-<a name="idp24741904"></a><h4>Returns</h4>
+<a name="hb-font-funcs-get-user-data.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -799,7 +881,7 @@ hb_font_funcs_get_user_data (<em class="parameter"><code><a class="link" href="h
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
hb_font_funcs_is_immutable (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t"><span class="type">hb_font_funcs_t</span></a> *ffuncs</code></em>);</pre>
<div class="refsect3">
-<a name="idp24751104"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-is-immutable.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -813,11 +895,7 @@ hb_font_funcs_is_immutable (<em class="parameter"><code><a class="link" href="ha
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp24759184"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -825,7 +903,7 @@ hb_font_funcs_is_immutable (<em class="parameter"><code><a class="link" href="ha
<pre class="programlisting"><span class="returnvalue">void</span>
hb_font_funcs_make_immutable (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t"><span class="type">hb_font_funcs_t</span></a> *ffuncs</code></em>);</pre>
<div class="refsect3">
-<a name="idp24768624"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-make-immutable.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -839,15 +917,16 @@ hb_font_funcs_make_immutable (<em class="parameter"><code><a class="link" href="
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-funcs-reference"></a><h3>hb_font_funcs_reference ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t"><span class="returnvalue">hb_font_funcs_t</span></a> *
hb_font_funcs_reference (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t"><span class="type">hb_font_funcs_t</span></a> *ffuncs</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp24785040"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-reference.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -861,11 +940,7 @@ hb_font_funcs_reference (<em class="parameter"><code><a class="link" href="harfb
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp24793440"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -877,7 +952,7 @@ hb_font_funcs_set_glyph_contour_point_func
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp24808064"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-set-glyph-contour-point-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -898,7 +973,7 @@ hb_font_funcs_set_glyph_contour_point_func
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -909,7 +984,7 @@ hb_font_funcs_set_glyph_extents_func (<em class="parameter"><code><a class="link
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp24834320"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-set-glyph-extents-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -930,7 +1005,7 @@ hb_font_funcs_set_glyph_extents_func (<em class="parameter"><code><a class="link
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -942,21 +1017,28 @@ hb_font_funcs_set_glyph_from_name_func
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp24860624"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-set-glyph-from-name-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
-<tbody><tr>
+<tbody>
+<tr>
<td class="parameter_name"><p>ffuncs</p></td>
<td class="parameter_description"><p>font functions.</p></td>
<td class="parameter_annotations"> </td>
-</tr></tbody>
+</tr>
+<tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
+</tr>
+</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -966,22 +1048,32 @@ hb_font_funcs_set_glyph_func (<em class="parameter"><code><a class="link" href="
<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-get-glyph-func-t" title="hb_font_get_glyph_func_t ()"><span class="type">hb_font_get_glyph_func_t</span></a> func</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
+<div class="warning"><p><code class="literal">hb_font_funcs_set_glyph_func</code> has been deprecated since version 1.2.3 and should not be used in newly-written code.</p></div>
+<p>Deprecated. Use <code class="function">hb_font_funcs_set_nominal_glyph_func()</code> and
+<code class="function">hb_font_funcs_set_variation_glyph_func()</code> instead.</p>
<div class="refsect3">
-<a name="idp24882160"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-set-glyph-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
-<tbody><tr>
+<tbody>
+<tr>
<td class="parameter_name"><p>ffuncs</p></td>
<td class="parameter_description"><p>font functions.</p></td>
<td class="parameter_annotations"> </td>
-</tr></tbody>
+</tr>
+<tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
+</tr>
+</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -993,7 +1085,7 @@ hb_font_funcs_set_glyph_h_advance_func
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp24903696"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-set-glyph-h-advance-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1014,7 +1106,7 @@ hb_font_funcs_set_glyph_h_advance_func
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1026,7 +1118,7 @@ hb_font_funcs_set_glyph_h_kerning_func
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp24930000"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-set-glyph-h-kerning-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1047,7 +1139,7 @@ hb_font_funcs_set_glyph_h_kerning_func
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1058,7 +1150,7 @@ hb_font_funcs_set_glyph_h_origin_func (<em class="parameter"><code><a class="lin
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp24956320"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-set-glyph-h-origin-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1079,7 +1171,7 @@ hb_font_funcs_set_glyph_h_origin_func (<em class="parameter"><code><a class="lin
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1090,21 +1182,28 @@ hb_font_funcs_set_glyph_name_func (<em class="parameter"><code><a class="link" h
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp24982496"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-set-glyph-name-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
-<tbody><tr>
+<tbody>
+<tr>
<td class="parameter_name"><p>ffuncs</p></td>
<td class="parameter_description"><p>font functions.</p></td>
<td class="parameter_annotations"> </td>
-</tr></tbody>
+</tr>
+<tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
+</tr>
+</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1116,7 +1215,7 @@ hb_font_funcs_set_glyph_v_advance_func
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp25004096"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-set-glyph-v-advance-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1137,7 +1236,7 @@ hb_font_funcs_set_glyph_v_advance_func
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1149,7 +1248,7 @@ hb_font_funcs_set_glyph_v_kerning_func
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp25030400"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-set-glyph-v-kerning-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1170,7 +1269,7 @@ hb_font_funcs_set_glyph_v_kerning_func
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1181,7 +1280,7 @@ hb_font_funcs_set_glyph_v_origin_func (<em class="parameter"><code><a class="lin
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp25056720"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-set-glyph-v-origin-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1202,7 +1301,7 @@ hb_font_funcs_set_glyph_v_origin_func (<em class="parameter"><code><a class="lin
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1213,8 +1312,9 @@ hb_font_funcs_set_user_data (<em class="parameter"><code><a class="link" href="h
<em class="parameter"><code><span class="type">void</span> *data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="type">hb_bool_t</span></a> replace</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp25084624"></a><h4>Parameters</h4>
+<a name="hb-font-funcs-set-user-data.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1228,11 +1328,7 @@ hb_font_funcs_set_user_data (<em class="parameter"><code><a class="link" href="h
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp25093024"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1240,11 +1336,10 @@ hb_font_funcs_set_user_data (<em class="parameter"><code><a class="link" href="h
<pre class="programlisting"><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="returnvalue">hb_font_t</span></a> *
hb_font_get_empty (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<div class="refsect3">
-<a name="idp25101776"></a><h4>Returns</h4>
+<a name="hb-font-get-empty.returns"></a><h4>Returns</h4>
<p> (transfer full)</p>
-<p></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1252,7 +1347,7 @@ hb_font_get_empty (<em class="parameter"><code><span class="type">void</span></c
<pre class="programlisting"><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="returnvalue">hb_face_t</span></a> *
hb_font_get_face (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>);</pre>
<div class="refsect3">
-<a name="idp25111616"></a><h4>Parameters</h4>
+<a name="hb-font-get-face.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1267,11 +1362,11 @@ hb_font_get_face (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
</table></div>
</div>
<div class="refsect3">
-<a name="idp25120016"></a><h4>Returns</h4>
+<a name="hb-font-get-face.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1282,7 +1377,7 @@ hb_font_get_glyph (<em class="parameter"><code><a class="link" href="harfbuzz-hb
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> variation_selector</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *glyph</code></em>);</pre>
<div class="refsect3">
-<a name="idp25136000"></a><h4>Parameters</h4>
+<a name="hb-font-get-glyph.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1303,11 +1398,7 @@ hb_font_get_glyph (<em class="parameter"><code><a class="link" href="harfbuzz-hb
</tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp25148112"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1320,7 +1411,7 @@ hb_font_get_glyph_advance_for_direction
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *x</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *y</code></em>);</pre>
<div class="refsect3">
-<a name="idp25164464"></a><h4>Parameters</h4>
+<a name="hb-font-get-glyph-advance-for-direction.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1346,7 +1437,7 @@ hb_font_get_glyph_advance_for_direction
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1356,12 +1447,6 @@ hb_font_get_glyph_advance_for_direction
<em class="parameter"><code><span class="type">void</span> *font_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> glyph</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp25194864"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -1373,7 +1458,7 @@ hb_font_get_glyph_contour_point (<em class="parameter"><code><a class="link" hre
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *x</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *y</code></em>);</pre>
<div class="refsect3">
-<a name="idp25210592"></a><h4>Parameters</h4>
+<a name="hb-font-get-glyph-contour-point.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1399,11 +1484,7 @@ hb_font_get_glyph_contour_point (<em class="parameter"><code><a class="link" hre
</tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp25226416"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1417,7 +1498,7 @@ hb_font_get_glyph_contour_point_for_origin
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *x</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *y</code></em>);</pre>
<div class="refsect3">
-<a name="idp25244640"></a><h4>Parameters</h4>
+<a name="hb-font-get-glyph-contour-point-for-origin.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1443,11 +1524,7 @@ hb_font_get_glyph_contour_point_for_origin
</tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp25260464"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1461,12 +1538,6 @@ hb_font_get_glyph_contour_point_for_origin
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *x</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *y</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp25281728"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -1476,7 +1547,7 @@ hb_font_get_glyph_extents (<em class="parameter"><code><a class="link" href="har
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> glyph</code></em>,
<em class="parameter"><code><span class="type">hb_glyph_extents_t</span> *extents</code></em>);</pre>
<div class="refsect3">
-<a name="idp25293952"></a><h4>Parameters</h4>
+<a name="hb-font-get-glyph-extents.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1497,11 +1568,7 @@ hb_font_get_glyph_extents (<em class="parameter"><code><a class="link" href="har
</tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp25306064"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1512,7 +1579,7 @@ hb_font_get_glyph_extents_for_origin (<em class="parameter"><code><a class="link
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-direction-t" title="enum hb_direction_t"><span class="type">hb_direction_t</span></a> direction</code></em>,
<em class="parameter"><code><span class="type">hb_glyph_extents_t</span> *extents</code></em>);</pre>
<div class="refsect3">
-<a name="idp25320672"></a><h4>Parameters</h4>
+<a name="hb-font-get-glyph-extents-for-origin.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1533,11 +1600,7 @@ hb_font_get_glyph_extents_for_origin (<em class="parameter"><code><a class="link
</tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp25332784"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1548,12 +1611,6 @@ hb_font_get_glyph_extents_for_origin (<em class="parameter"><code><a class="link
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> glyph</code></em>,
<em class="parameter"><code><span class="type">hb_glyph_extents_t</span> *extents</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp25350560"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -1564,7 +1621,7 @@ hb_font_get_glyph_from_name (<em class="parameter"><code><a class="link" href="h
<em class="parameter"><code><span class="type">int</span> len</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *glyph</code></em>);</pre>
<div class="refsect3">
-<a name="idp25364656"></a><h4>Parameters</h4>
+<a name="hb-font-get-glyph-from-name.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1590,11 +1647,7 @@ hb_font_get_glyph_from_name (<em class="parameter"><code><a class="link" href="h
</tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp25380480"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1604,12 +1657,6 @@ hb_font_get_glyph_from_name (<em class="parameter"><code><a class="link" href="h
<em class="parameter"><code><span class="type">void</span> *font_data</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
<em class="parameter"><code><span class="type">int</span> len</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp25396720"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -1621,12 +1668,7 @@ hb_font_get_glyph_from_name (<em class="parameter"><code><a class="link" href="h
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> variation_selector</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *glyph</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp25415520"></a><h4>Returns</h4>
-<p></p>
-</div>
+<div class="warning"><p><code class="literal">hb_font_get_glyph_func_t</code> is deprecated and should not be used in newly-written code.</p></div>
</div>
<hr>
<div class="refsect2">
@@ -1635,7 +1677,7 @@ hb_font_get_glyph_from_name (<em class="parameter"><code><a class="link" href="h
hb_font_get_glyph_h_advance (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> glyph</code></em>);</pre>
<div class="refsect3">
-<a name="idp25426048"></a><h4>Parameters</h4>
+<a name="hb-font-get-glyph-h-advance.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1649,11 +1691,7 @@ hb_font_get_glyph_h_advance (<em class="parameter"><code><a class="link" href="h
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp25434448"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1663,7 +1701,7 @@ hb_font_get_glyph_h_kerning (<em class="parameter"><code><a class="link" href="h
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> left_glyph</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> right_glyph</code></em>);</pre>
<div class="refsect3">
-<a name="idp25447280"></a><h4>Parameters</h4>
+<a name="hb-font-get-glyph-h-kerning.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1677,11 +1715,7 @@ hb_font_get_glyph_h_kerning (<em class="parameter"><code><a class="link" href="h
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp25455680"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1692,7 +1726,7 @@ hb_font_get_glyph_h_origin (<em class="parameter"><code><a class="link" href="ha
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *x</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *y</code></em>);</pre>
<div class="refsect3">
-<a name="idp25470208"></a><h4>Parameters</h4>
+<a name="hb-font-get-glyph-h-origin.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1718,11 +1752,7 @@ hb_font_get_glyph_h_origin (<em class="parameter"><code><a class="link" href="ha
</tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp25486032"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1736,7 +1766,7 @@ hb_font_get_glyph_kerning_for_direction
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *x</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *y</code></em>);</pre>
<div class="refsect3">
-<a name="idp25504080"></a><h4>Parameters</h4>
+<a name="hb-font-get-glyph-kerning-for-direction.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1762,7 +1792,7 @@ hb_font_get_glyph_kerning_for_direction
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1773,12 +1803,6 @@ hb_font_get_glyph_kerning_for_direction
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> first_glyph</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> second_glyph</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp25536256"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -1789,7 +1813,7 @@ hb_font_get_glyph_name (<em class="parameter"><code><a class="link" href="harfbu
<em class="parameter"><code><span class="type">char</span> *name</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> size</code></em>);</pre>
<div class="refsect3">
-<a name="idp25550288"></a><h4>Parameters</h4>
+<a name="hb-font-get-glyph-name.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1810,11 +1834,7 @@ hb_font_get_glyph_name (<em class="parameter"><code><a class="link" href="harfbu
</tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp25562400"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1826,12 +1846,6 @@ hb_font_get_glyph_name (<em class="parameter"><code><a class="link" href="harfbu
<em class="parameter"><code><span class="type">char</span> *name</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> size</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp25581984"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -1844,7 +1858,7 @@ hb_font_get_glyph_origin_for_direction
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *x</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *y</code></em>);</pre>
<div class="refsect3">
-<a name="idp25597664"></a><h4>Parameters</h4>
+<a name="hb-font-get-glyph-origin-for-direction.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1870,7 +1884,7 @@ hb_font_get_glyph_origin_for_direction
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1882,12 +1896,6 @@ hb_font_get_glyph_origin_for_direction
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *x</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *y</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp25631472"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -1896,7 +1904,7 @@ hb_font_get_glyph_origin_for_direction
hb_font_get_glyph_v_advance (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> glyph</code></em>);</pre>
<div class="refsect3">
-<a name="idp25641936"></a><h4>Parameters</h4>
+<a name="hb-font-get-glyph-v-advance.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1910,11 +1918,7 @@ hb_font_get_glyph_v_advance (<em class="parameter"><code><a class="link" href="h
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp25650336"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1924,7 +1928,7 @@ hb_font_get_glyph_v_kerning (<em class="parameter"><code><a class="link" href="h
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> top_glyph</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> bottom_glyph</code></em>);</pre>
<div class="refsect3">
-<a name="idp25663104"></a><h4>Parameters</h4>
+<a name="hb-font-get-glyph-v-kerning.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1938,11 +1942,7 @@ hb_font_get_glyph_v_kerning (<em class="parameter"><code><a class="link" href="h
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp25671504"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1953,7 +1953,7 @@ hb_font_get_glyph_v_origin (<em class="parameter"><code><a class="link" href="ha
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *x</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *y</code></em>);</pre>
<div class="refsect3">
-<a name="idp25686032"></a><h4>Parameters</h4>
+<a name="hb-font-get-glyph-v-origin.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -1979,11 +1979,7 @@ hb_font_get_glyph_v_origin (<em class="parameter"><code><a class="link" href="ha
</tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp25701856"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1991,7 +1987,7 @@ hb_font_get_glyph_v_origin (<em class="parameter"><code><a class="link" href="ha
<pre class="programlisting"><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="returnvalue">hb_font_t</span></a> *
hb_font_get_parent (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>);</pre>
<div class="refsect3">
-<a name="idp25711216"></a><h4>Parameters</h4>
+<a name="hb-font-get-parent.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -2006,11 +2002,11 @@ hb_font_get_parent (<em class="parameter"><code><a class="link" href="harfbuzz-h
</table></div>
</div>
<div class="refsect3">
-<a name="idp25719616"></a><h4>Returns</h4>
+<a name="hb-font-get-parent.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -2020,7 +2016,7 @@ hb_font_get_ppem (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
<em class="parameter"><code>unsigned <span class="type">int</span> *x_ppem</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *y_ppem</code></em>);</pre>
<div class="refsect3">
-<a name="idp25734272"></a><h4>Parameters</h4>
+<a name="hb-font-get-ppem.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -2046,7 +2042,7 @@ hb_font_get_ppem (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -2056,7 +2052,7 @@ hb_font_get_scale (<em class="parameter"><code><a class="link" href="harfbuzz-hb
<em class="parameter"><code><span class="type">int</span> *x_scale</code></em>,
<em class="parameter"><code><span class="type">int</span> *y_scale</code></em>);</pre>
<div class="refsect3">
-<a name="idp25761376"></a><h4>Parameters</h4>
+<a name="hb-font-get-scale.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -2082,7 +2078,7 @@ hb_font_get_scale (<em class="parameter"><code><a class="link" href="harfbuzz-hb
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -2090,8 +2086,9 @@ hb_font_get_scale (<em class="parameter"><code><a class="link" href="harfbuzz-hb
<pre class="programlisting"><span class="returnvalue">void</span> *
hb_font_get_user_data (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-user-data-key-t"><span class="type">hb_user_data_key_t</span></a> *key</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp25786848"></a><h4>Parameters</h4>
+<a name="hb-font-get-user-data.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -2106,11 +2103,11 @@ hb_font_get_user_data (<em class="parameter"><code><a class="link" href="harfbuz
</table></div>
</div>
<div class="refsect3">
-<a name="idp25795248"></a><h4>Returns</h4>
+<a name="hb-font-get-user-data.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -2121,7 +2118,7 @@ hb_font_glyph_from_string (<em class="parameter"><code><a class="link" href="har
<em class="parameter"><code><span class="type">int</span> len</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *glyph</code></em>);</pre>
<div class="refsect3">
-<a name="idp25811552"></a><h4>Parameters</h4>
+<a name="hb-font-glyph-from-string.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -2137,7 +2134,7 @@ hb_font_glyph_from_string (<em class="parameter"><code><a class="link" href="har
<tr>
<td class="parameter_name"><p>s</p></td>
<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=len]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=len][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> uint8_t]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>glyph</p></td>
@@ -2147,11 +2144,7 @@ hb_font_glyph_from_string (<em class="parameter"><code><a class="link" href="har
</tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp25827376"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -2162,7 +2155,7 @@ hb_font_glyph_to_string (<em class="parameter"><code><a class="link" href="harfb
<em class="parameter"><code><span class="type">char</span> *s</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> size</code></em>);</pre>
<div class="refsect3">
-<a name="idp25842016"></a><h4>Parameters</h4>
+<a name="hb-font-glyph-to-string.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -2183,7 +2176,7 @@ hb_font_glyph_to_string (<em class="parameter"><code><a class="link" href="harfb
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -2191,7 +2184,7 @@ hb_font_glyph_to_string (<em class="parameter"><code><a class="link" href="harfb
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
hb_font_is_immutable (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>);</pre>
<div class="refsect3">
-<a name="idp25862080"></a><h4>Parameters</h4>
+<a name="hb-font-is-immutable.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -2205,11 +2198,7 @@ hb_font_is_immutable (<em class="parameter"><code><a class="link" href="harfbuzz
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp25870480"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -2217,7 +2206,7 @@ hb_font_is_immutable (<em class="parameter"><code><a class="link" href="harfbuzz
<pre class="programlisting"><span class="returnvalue">void</span>
hb_font_make_immutable (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>);</pre>
<div class="refsect3">
-<a name="idp25879856"></a><h4>Parameters</h4>
+<a name="hb-font-make-immutable.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -2231,15 +2220,16 @@ hb_font_make_immutable (<em class="parameter"><code><a class="link" href="harfbu
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-reference"></a><h3>hb_font_reference ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="returnvalue">hb_font_t</span></a> *
hb_font_reference (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp25896192"></a><h4>Parameters</h4>
+<a name="hb-font-reference.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -2254,11 +2244,11 @@ hb_font_reference (<em class="parameter"><code><a class="link" href="harfbuzz-hb
</table></div>
</div>
<div class="refsect3">
-<a name="idp25904592"></a><h4>Returns</h4>
+<a name="hb-font-reference.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -2269,7 +2259,7 @@ hb_font_set_funcs (<em class="parameter"><code><a class="link" href="harfbuzz-hb
<em class="parameter"><code><span class="type">void</span> *font_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp25920576"></a><h4>Parameters</h4>
+<a name="hb-font-set-funcs.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -2290,7 +2280,7 @@ hb_font_set_funcs (<em class="parameter"><code><a class="link" href="harfbuzz-hb
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -2300,7 +2290,7 @@ hb_font_set_funcs_data (<em class="parameter"><code><a class="link" href="harfbu
<em class="parameter"><code><span class="type">void</span> *font_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp25945024"></a><h4>Parameters</h4>
+<a name="hb-font-set-funcs-data.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -2321,7 +2311,7 @@ hb_font_set_funcs_data (<em class="parameter"><code><a class="link" href="harfbu
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -2331,7 +2321,7 @@ hb_font_set_ppem (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
<em class="parameter"><code>unsigned <span class="type">int</span> x_ppem</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> y_ppem</code></em>);</pre>
<div class="refsect3">
-<a name="idp25969200"></a><h4>Parameters</h4>
+<a name="hb-font-set-ppem.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -2345,7 +2335,7 @@ hb_font_set_ppem (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -2355,7 +2345,7 @@ hb_font_set_scale (<em class="parameter"><code><a class="link" href="harfbuzz-hb
<em class="parameter"><code><span class="type">int</span> x_scale</code></em>,
<em class="parameter"><code><span class="type">int</span> y_scale</code></em>);</pre>
<div class="refsect3">
-<a name="idp25988880"></a><h4>Parameters</h4>
+<a name="hb-font-set-scale.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -2369,7 +2359,7 @@ hb_font_set_scale (<em class="parameter"><code><a class="link" href="harfbuzz-hb
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -2380,8 +2370,9 @@ hb_font_set_user_data (<em class="parameter"><code><a class="link" href="harfbuz
<em class="parameter"><code><span class="type">void</span> *data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="type">hb_bool_t</span></a> replace</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp26012016"></a><h4>Parameters</h4>
+<a name="hb-font-set-user-data.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -2395,11 +2386,7 @@ hb_font_set_user_data (<em class="parameter"><code><a class="link" href="harfbuz
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp26020416"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -2412,7 +2399,7 @@ hb_font_subtract_glyph_origin_for_direction
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *x</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *y</code></em>);</pre>
<div class="refsect3">
-<a name="idp26036768"></a><h4>Parameters</h4>
+<a name="hb-font-subtract-glyph-origin-for-direction.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -2438,7 +2425,7 @@ hb_font_subtract_glyph_origin_for_direction
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -2447,12 +2434,195 @@ hb_font_subtract_glyph_origin_for_direction
<span class="c_punctuation">(</span>*hb_reference_table_func_t<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> tag</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
-<p>
-</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-font-funcs-set-font-h-extents-func"></a><h3>hb_font_funcs_set_font_h_extents_func ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_font_funcs_set_font_h_extents_func (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t"><span class="type">hb_font_funcs_t</span></a> *ffuncs</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-get-font-h-extents-func-t" title="hb_font_get_font_h_extents_func_t"><span class="type">hb_font_get_font_h_extents_func_t</span></a> func</code></em>,
+ <em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
+<div class="refsect3">
+<a name="hb-font-funcs-set-font-h-extents-func.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>ffuncs</p></td>
+<td class="parameter_description"><p>font functions.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-1-1-2.html#api-index-1.1.2">1.1.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-font-funcs-set-font-v-extents-func"></a><h3>hb_font_funcs_set_font_v_extents_func ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_font_funcs_set_font_v_extents_func (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t"><span class="type">hb_font_funcs_t</span></a> *ffuncs</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-get-font-v-extents-func-t" title="hb_font_get_font_v_extents_func_t"><span class="type">hb_font_get_font_v_extents_func_t</span></a> func</code></em>,
+ <em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
+<div class="refsect3">
+<a name="hb-font-funcs-set-font-v-extents-func.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>ffuncs</p></td>
+<td class="parameter_description"><p>font functions.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-1-1-2.html#api-index-1.1.2">1.1.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-font-get-extents-for-direction"></a><h3>hb_font_get_extents_for_direction ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_font_get_extents_for_direction (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-direction-t" title="enum hb_direction_t"><span class="type">hb_direction_t</span></a> direction</code></em>,
+ <em class="parameter"><code><span class="type">hb_font_extents_t</span> *extents</code></em>);</pre>
<div class="refsect3">
-<a name="idp26065488"></a><h4>Returns</h4>
-<p></p>
+<a name="hb-font-get-extents-for-direction.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>font</p></td>
+<td class="parameter_description"><p>a font.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
</div>
+<p class="since">Since: <a class="link" href="api-index-1-1-3.html#api-index-1.1.3">1.1.3</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-font-get-font-extents-func-t"></a><h3>hb_font_get_font_extents_func_t ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+<span class="c_punctuation">(</span>*hb_font_get_font_extents_func_t<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
+ <em class="parameter"><code><span class="type">void</span> *font_data</code></em>,
+ <em class="parameter"><code><span class="type">hb_font_extents_t</span> *metrics</code></em>,
+ <em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-font-get-h-extents"></a><h3>hb_font_get_h_extents ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+hb_font_get_h_extents (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
+ <em class="parameter"><code><span class="type">hb_font_extents_t</span> *extents</code></em>);</pre>
+<div class="refsect3">
+<a name="hb-font-get-h-extents.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>font</p></td>
+<td class="parameter_description"><p>a font.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>extents</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-1-1-3.html#api-index-1.1.3">1.1.3</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-font-get-v-extents"></a><h3>hb_font_get_v_extents ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+hb_font_get_v_extents (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
+ <em class="parameter"><code><span class="type">hb_font_extents_t</span> *extents</code></em>);</pre>
+<div class="refsect3">
+<a name="hb-font-get-v-extents.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>font</p></td>
+<td class="parameter_description"><p>a font.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>extents</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-1-1-3.html#api-index-1.1.3">1.1.3</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-font-set-parent"></a><h3>hb_font_set_parent ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_font_set_parent (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *parent</code></em>);</pre>
+<p>Sets parent font of <em class="parameter"><code>font</code></em>
+.</p>
+<div class="refsect3">
+<a name="hb-font-set-parent.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>font</p></td>
+<td class="parameter_description"><p>a font.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>parent</p></td>
+<td class="parameter_description"><p>new parent.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<p class="since">Since: <a class="link" href="api-index-1-0-5.html#api-index-1.0.5">1.0.5</a></p>
</div>
</div>
<div class="refsect1">
@@ -2461,69 +2631,64 @@ hb_font_subtract_glyph_origin_for_direction
<a name="hb-font-funcs-t"></a><h3>hb_font_funcs_t</h3>
<pre class="programlisting">typedef struct hb_font_funcs_t hb_font_funcs_t;
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-get-glyph-h-advance-func-t"></a><h3>hb_font_get_glyph_h_advance_func_t</h3>
<pre class="programlisting">typedef hb_font_get_glyph_advance_func_t hb_font_get_glyph_h_advance_func_t;
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-get-glyph-h-kerning-func-t"></a><h3>hb_font_get_glyph_h_kerning_func_t</h3>
<pre class="programlisting">typedef hb_font_get_glyph_kerning_func_t hb_font_get_glyph_h_kerning_func_t;
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-get-glyph-h-origin-func-t"></a><h3>hb_font_get_glyph_h_origin_func_t</h3>
<pre class="programlisting">typedef hb_font_get_glyph_origin_func_t hb_font_get_glyph_h_origin_func_t;
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-get-glyph-v-advance-func-t"></a><h3>hb_font_get_glyph_v_advance_func_t</h3>
<pre class="programlisting">typedef hb_font_get_glyph_advance_func_t hb_font_get_glyph_v_advance_func_t;
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-get-glyph-v-kerning-func-t"></a><h3>hb_font_get_glyph_v_kerning_func_t</h3>
<pre class="programlisting">typedef hb_font_get_glyph_kerning_func_t hb_font_get_glyph_v_kerning_func_t;
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-get-glyph-v-origin-func-t"></a><h3>hb_font_get_glyph_v_origin_func_t</h3>
<pre class="programlisting">typedef hb_font_get_glyph_origin_func_t hb_font_get_glyph_v_origin_func_t;
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-t"></a><h3>hb_font_t</h3>
<pre class="programlisting">typedef struct hb_font_t hb_font_t;
</pre>
-<p>
-</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-font-get-font-h-extents-func-t"></a><h3>hb_font_get_font_h_extents_func_t</h3>
+<pre class="programlisting">typedef hb_font_get_font_extents_func_t hb_font_get_font_h_extents_func_t;
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-font-get-font-v-extents-func-t"></a><h3>hb_font_get_font_v_extents_func_t</h3>
+<pre class="programlisting">typedef hb_font_get_font_extents_func_t hb_font_get_font_v_extents_func_t;
+</pre>
</div>
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-ft.html b/docs/html/harfbuzz-hb-ft.html
index 910af86..66c83db 100644
--- a/docs/reference/html/harfbuzz-hb-ft.html
+++ b/docs/html/harfbuzz-hb-ft.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-ft</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
+<title>hb-ft: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
<link rel="prev" href="harfbuzz-hb-icu.html" title="hb-icu">
<link rel="next" href="harfbuzz-hb-graphite2.html" title="hb-graphite2">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -18,7 +18,7 @@
<a href="#harfbuzz-hb-ft.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb-icu.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-graphite2.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
@@ -57,6 +57,14 @@
</tr>
<tr>
<td class="function_type">
+<a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="returnvalue">hb_face_t</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-ft.html#hb-ft-face-create-referenced" title="hb_ft_face_create_referenced ()">hb_ft_face_create_referenced</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
<a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="returnvalue">hb_font_t</span></a> *
</td>
<td class="function_name">
@@ -65,6 +73,14 @@
</tr>
<tr>
<td class="function_type">
+<a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="returnvalue">hb_font_t</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-ft.html#hb-ft-font-create-referenced" title="hb_ft_font_create_referenced ()">hb_ft_font_create_referenced</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
<span class="returnvalue">FT_Face</span>
</td>
<td class="function_name">
@@ -76,6 +92,22 @@
<span class="returnvalue">void</span>
</td>
<td class="function_name">
+<a class="link" href="harfbuzz-hb-ft.html#hb-ft-font-set-load-flags" title="hb_ft_font_set_load_flags ()">hb_ft_font_set_load_flags</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">int</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-ft.html#hb-ft-font-get-load-flags" title="hb_ft_font_get_load_flags ()">hb_ft_font_get_load_flags</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
<a class="link" href="harfbuzz-hb-ft.html#hb-ft-font-set-funcs" title="hb_ft_font_set_funcs ()">hb_ft_font_set_funcs</a> <span class="c_punctuation">()</span>
</td>
</tr>
@@ -84,8 +116,6 @@
</div>
<div class="refsect1">
<a name="harfbuzz-hb-ft.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-ft.functions_details"></a><h2>Functions</h2>
@@ -95,7 +125,7 @@
hb_ft_face_create (<em class="parameter"><code><span class="type">FT_Face</span> ft_face</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp18589520"></a><h4>Parameters</h4>
+<a name="hb-ft-face-create.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -110,11 +140,11 @@ hb_ft_face_create (<em class="parameter"><code><span class="type">FT_Face</span>
</table></div>
</div>
<div class="refsect3">
-<a name="idp14983456"></a><h4>Returns</h4>
+<a name="hb-ft-face-create.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -122,11 +152,23 @@ hb_ft_face_create (<em class="parameter"><code><span class="type">FT_Face</span>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="returnvalue">hb_face_t</span></a> *
hb_ft_face_create_cached (<em class="parameter"><code><span class="type">FT_Face</span> ft_face</code></em>);</pre>
<div class="refsect3">
-<a name="idp16534320"></a><h4>Returns</h4>
+<a name="hb-ft-face-create-cached.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-ft-face-create-referenced"></a><h3>hb_ft_face_create_referenced ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="returnvalue">hb_face_t</span></a> *
+hb_ft_face_create_referenced (<em class="parameter"><code><span class="type">FT_Face</span> ft_face</code></em>);</pre>
+<div class="refsect3">
+<a name="hb-ft-face-create-referenced.returns"></a><h4>Returns</h4>
+<p>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-38.html#api-index-0.9.38">0.9.38</a></p>
</div>
<hr>
<div class="refsect2">
@@ -135,7 +177,7 @@ hb_ft_face_create_cached (<em class="parameter"><code><span class="type">FT_Face
hb_ft_font_create (<em class="parameter"><code><span class="type">FT_Face</span> ft_face</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp18930768"></a><h4>Parameters</h4>
+<a name="hb-ft-font-create.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -150,31 +192,50 @@ hb_ft_font_create (<em class="parameter"><code><span class="type">FT_Face</span>
</table></div>
</div>
<div class="refsect3">
-<a name="idp14801584"></a><h4>Returns</h4>
+<a name="hb-ft-font-create.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-ft-font-create-referenced"></a><h3>hb_ft_font_create_referenced ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="returnvalue">hb_font_t</span></a> *
+hb_ft_font_create_referenced (<em class="parameter"><code><span class="type">FT_Face</span> ft_face</code></em>);</pre>
+<div class="refsect3">
+<a name="hb-ft-font-create-referenced.returns"></a><h4>Returns</h4>
+<p>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-38.html#api-index-0.9.38">0.9.38</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-ft-font-get-face"></a><h3>hb_ft_font_get_face ()</h3>
<pre class="programlisting"><span class="returnvalue">FT_Face</span>
hb_ft_font_get_face (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp26507392"></a><h4>Returns</h4>
-<p></p>
</div>
+<hr>
+<div class="refsect2">
+<a name="hb-ft-font-set-load-flags"></a><h3>hb_ft_font_set_load_flags ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_ft_font_set_load_flags (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
+ <em class="parameter"><code><span class="type">int</span> load_flags</code></em>);</pre>
+<p class="since">Since: <a class="link" href="api-index-1-0-5.html#api-index-1.0.5">1.0.5</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-ft-font-get-load-flags"></a><h3>hb_ft_font_get_load_flags ()</h3>
+<pre class="programlisting"><span class="returnvalue">int</span>
+hb_ft_font_get_load_flags (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>);</pre>
+<p class="since">Since: <a class="link" href="api-index-1-0-5.html#api-index-1.0.5">1.0.5</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-ft-font-set-funcs"></a><h3>hb_ft_font_set_funcs ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
hb_ft_font_set_funcs (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>);</pre>
-<p>
-</p>
</div>
</div>
<div class="refsect1">
@@ -182,7 +243,6 @@ hb_ft_font_set_funcs (<em class="parameter"><code><a class="link" href="harfbuzz
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-glib.html b/docs/html/harfbuzz-hb-glib.html
index 03ab919..342625c 100644
--- a/docs/reference/html/harfbuzz-hb-glib.html
+++ b/docs/html/harfbuzz-hb-glib.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-glib</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
+<title>hb-glib: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
<link rel="prev" href="harfbuzz-hb-shape-plan.html" title="hb-shape-plan">
<link rel="next" href="harfbuzz-hb-icu.html" title="hb-icu">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -18,7 +18,7 @@
<a href="#harfbuzz-hb-glib.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb-shape-plan.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-icu.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
@@ -63,13 +63,19 @@
<a class="link" href="harfbuzz-hb-glib.html#hb-glib-script-to-script" title="hb_glib_script_to_script ()">hb_glib_script_to_script</a> <span class="c_punctuation">()</span>
</td>
</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-blob.html#hb-blob-t"><span class="returnvalue">hb_blob_t</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-glib.html#hb-glib-blob-create" title="hb_glib_blob_create ()">hb_glib_blob_create</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-glib.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-glib.functions_details"></a><h2>Functions</h2>
@@ -77,36 +83,25 @@
<a name="hb-glib-get-unicode-funcs"></a><h3>hb_glib_get_unicode_funcs ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="returnvalue">hb_unicode_funcs_t</span></a> *
hb_glib_get_unicode_funcs (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp18673488"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
<a name="hb-glib-script-from-script"></a><h3>hb_glib_script_from_script ()</h3>
<pre class="programlisting"><span class="returnvalue">GUnicodeScript</span>
hb_glib_script_from_script (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> script</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp19415904"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
<a name="hb-glib-script-to-script"></a><h3>hb_glib_script_to_script ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="returnvalue">hb_script_t</span></a>
hb_glib_script_to_script (<em class="parameter"><code><span class="type">GUnicodeScript</span> script</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp16666160"></a><h4>Returns</h4>
-<p></p>
</div>
+<hr>
+<div class="refsect2">
+<a name="hb-glib-blob-create"></a><h3>hb_glib_blob_create ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-blob.html#hb-blob-t"><span class="returnvalue">hb_blob_t</span></a> *
+hb_glib_blob_create (<em class="parameter"><code><span class="type">GBytes</span> *gbytes</code></em>);</pre>
+<p class="since">Since: <a class="link" href="api-index-0-9-38.html#api-index-0.9.38">0.9.38</a></p>
</div>
</div>
<div class="refsect1">
@@ -114,7 +109,6 @@ hb_glib_script_to_script (<em class="parameter"><code><span class="type">GUnicod
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/html/harfbuzz-hb-gobject.html b/docs/html/harfbuzz-hb-gobject.html
new file mode 100644
index 0000000..6dfcd08
--- /dev/null
+++ b/docs/html/harfbuzz-hb-gobject.html
@@ -0,0 +1,651 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>hb-gobject: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
+<link rel="prev" href="harfbuzz-hb-coretext.html" title="hb-coretext">
+<link rel="next" href="object-tree.html" title="Object Hierarchy">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+ <a href="#harfbuzz-hb-gobject.description" class="shortcut">Description</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="harfbuzz-hb-coretext.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="object-tree.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="refentry">
+<a name="harfbuzz-hb-gobject"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="harfbuzz-hb-gobject.top_of_page"></a>hb-gobject</span></h2>
+<p>hb-gobject</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="harfbuzz-hb-gobject.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
+<tbody>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-blob-get-type" title="hb_gobject_blob_get_type ()">hb_gobject_blob_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-buffer-content-type-get-type" title="hb_gobject_buffer_content_type_get_type ()">hb_gobject_buffer_content_type_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-buffer-flags-get-type" title="hb_gobject_buffer_flags_get_type ()">hb_gobject_buffer_flags_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-buffer-get-type" title="hb_gobject_buffer_get_type ()">hb_gobject_buffer_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-buffer-serialize-flags-get-type" title="hb_gobject_buffer_serialize_flags_get_type ()">hb_gobject_buffer_serialize_flags_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-buffer-serialize-format-get-type" title="hb_gobject_buffer_serialize_format_get_type ()">hb_gobject_buffer_serialize_format_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-direction-get-type" title="hb_gobject_direction_get_type ()">hb_gobject_direction_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-face-get-type" title="hb_gobject_face_get_type ()">hb_gobject_face_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-font-funcs-get-type" title="hb_gobject_font_funcs_get_type ()">hb_gobject_font_funcs_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-font-get-type" title="hb_gobject_font_get_type ()">hb_gobject_font_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-memory-mode-get-type" title="hb_gobject_memory_mode_get_type ()">hb_gobject_memory_mode_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-ot-layout-glyph-class-get-type" title="hb_gobject_ot_layout_glyph_class_get_type ()">hb_gobject_ot_layout_glyph_class_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-script-get-type" title="hb_gobject_script_get_type ()">hb_gobject_script_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-shape-plan-get-type" title="hb_gobject_shape_plan_get_type ()">hb_gobject_shape_plan_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-unicode-combining-class-get-type" title="hb_gobject_unicode_combining_class_get_type ()">hb_gobject_unicode_combining_class_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-unicode-funcs-get-type" title="hb_gobject_unicode_funcs_get_type ()">hb_gobject_unicode_funcs_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-unicode-general-category-get-type" title="hb_gobject_unicode_general_category_get_type ()">hb_gobject_unicode_general_category_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-buffer-cluster-level-get-type" title="hb_gobject_buffer_cluster_level_get_type ()">hb_gobject_buffer_cluster_level_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-feature-get-type" title="hb_gobject_feature_get_type ()">hb_gobject_feature_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-glyph-info-get-type" title="hb_gobject_glyph_info_get_type ()">hb_gobject_glyph_info_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-glyph-position-get-type" title="hb_gobject_glyph_position_get_type ()">hb_gobject_glyph_position_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-segment-properties-get-type" title="hb_gobject_segment_properties_get_type ()">hb_gobject_segment_properties_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-set-get-type" title="hb_gobject_set_get_type ()">hb_gobject_set_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">GType</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-gobject.html#hb-gobject-user-data-key-get-type" title="hb_gobject_user_data_key_get_type ()">hb_gobject_user_data_key_get_type</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-hb-gobject.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
+<tbody>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BLOB:CAPS" title="HB_GOBJECT_TYPE_BLOB">HB_GOBJECT_TYPE_BLOB</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER:CAPS" title="HB_GOBJECT_TYPE_BUFFER">HB_GOBJECT_TYPE_BUFFER</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER-CONTENT-TYPE:CAPS" title="HB_GOBJECT_TYPE_BUFFER_CONTENT_TYPE">HB_GOBJECT_TYPE_BUFFER_CONTENT_TYPE</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER-FLAGS:CAPS" title="HB_GOBJECT_TYPE_BUFFER_FLAGS">HB_GOBJECT_TYPE_BUFFER_FLAGS</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER-SERIALIZE-FLAGS:CAPS" title="HB_GOBJECT_TYPE_BUFFER_SERIALIZE_FLAGS">HB_GOBJECT_TYPE_BUFFER_SERIALIZE_FLAGS</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER-SERIALIZE-FORMAT:CAPS" title="HB_GOBJECT_TYPE_BUFFER_SERIALIZE_FORMAT">HB_GOBJECT_TYPE_BUFFER_SERIALIZE_FORMAT</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-DIRECTION:CAPS" title="HB_GOBJECT_TYPE_DIRECTION">HB_GOBJECT_TYPE_DIRECTION</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-FACE:CAPS" title="HB_GOBJECT_TYPE_FACE">HB_GOBJECT_TYPE_FACE</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-FONT:CAPS" title="HB_GOBJECT_TYPE_FONT">HB_GOBJECT_TYPE_FONT</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-FONT-FUNCS:CAPS" title="HB_GOBJECT_TYPE_FONT_FUNCS">HB_GOBJECT_TYPE_FONT_FUNCS</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-MEMORY-MODE:CAPS" title="HB_GOBJECT_TYPE_MEMORY_MODE">HB_GOBJECT_TYPE_MEMORY_MODE</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-OT-LAYOUT-GLYPH-CLASS:CAPS" title="HB_GOBJECT_TYPE_OT_LAYOUT_GLYPH_CLASS">HB_GOBJECT_TYPE_OT_LAYOUT_GLYPH_CLASS</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-SCRIPT:CAPS" title="HB_GOBJECT_TYPE_SCRIPT">HB_GOBJECT_TYPE_SCRIPT</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-SHAPE-PLAN:CAPS" title="HB_GOBJECT_TYPE_SHAPE_PLAN">HB_GOBJECT_TYPE_SHAPE_PLAN</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-UNICODE-COMBINING-CLASS:CAPS" title="HB_GOBJECT_TYPE_UNICODE_COMBINING_CLASS">HB_GOBJECT_TYPE_UNICODE_COMBINING_CLASS</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-UNICODE-FUNCS:CAPS" title="HB_GOBJECT_TYPE_UNICODE_FUNCS">HB_GOBJECT_TYPE_UNICODE_FUNCS</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-UNICODE-GENERAL-CATEGORY:CAPS" title="HB_GOBJECT_TYPE_UNICODE_GENERAL_CATEGORY">HB_GOBJECT_TYPE_UNICODE_GENERAL_CATEGORY</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER-CLUSTER-LEVEL:CAPS" title="HB_GOBJECT_TYPE_BUFFER_CLUSTER_LEVEL">HB_GOBJECT_TYPE_BUFFER_CLUSTER_LEVEL</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-FEATURE:CAPS" title="HB_GOBJECT_TYPE_FEATURE">HB_GOBJECT_TYPE_FEATURE</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-GLYPH-INFO:CAPS" title="HB_GOBJECT_TYPE_GLYPH_INFO">HB_GOBJECT_TYPE_GLYPH_INFO</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-GLYPH-POSITION:CAPS" title="HB_GOBJECT_TYPE_GLYPH_POSITION">HB_GOBJECT_TYPE_GLYPH_POSITION</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-SEGMENT-PROPERTIES:CAPS" title="HB_GOBJECT_TYPE_SEGMENT_PROPERTIES">HB_GOBJECT_TYPE_SEGMENT_PROPERTIES</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-SET:CAPS" title="HB_GOBJECT_TYPE_SET">HB_GOBJECT_TYPE_SET</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-USER-DATA-KEY:CAPS" title="HB_GOBJECT_TYPE_USER_DATA_KEY">HB_GOBJECT_TYPE_USER_DATA_KEY</a></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-hb-gobject.description"></a><h2>Description</h2>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-hb-gobject.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="hb-gobject-blob-get-type"></a><h3>hb_gobject_blob_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_blob_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-buffer-content-type-get-type"></a><h3>hb_gobject_buffer_content_type_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_buffer_content_type_get_type
+ (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-buffer-flags-get-type"></a><h3>hb_gobject_buffer_flags_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_buffer_flags_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-buffer-get-type"></a><h3>hb_gobject_buffer_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_buffer_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-buffer-serialize-flags-get-type"></a><h3>hb_gobject_buffer_serialize_flags_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_buffer_serialize_flags_get_type
+ (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-buffer-serialize-format-get-type"></a><h3>hb_gobject_buffer_serialize_format_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_buffer_serialize_format_get_type
+ (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-direction-get-type"></a><h3>hb_gobject_direction_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_direction_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-face-get-type"></a><h3>hb_gobject_face_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_face_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-font-funcs-get-type"></a><h3>hb_gobject_font_funcs_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_font_funcs_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-font-get-type"></a><h3>hb_gobject_font_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_font_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-memory-mode-get-type"></a><h3>hb_gobject_memory_mode_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_memory_mode_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-ot-layout-glyph-class-get-type"></a><h3>hb_gobject_ot_layout_glyph_class_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_ot_layout_glyph_class_get_type
+ (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-script-get-type"></a><h3>hb_gobject_script_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_script_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-shape-plan-get-type"></a><h3>hb_gobject_shape_plan_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_shape_plan_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-unicode-combining-class-get-type"></a><h3>hb_gobject_unicode_combining_class_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_unicode_combining_class_get_type
+ (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-unicode-funcs-get-type"></a><h3>hb_gobject_unicode_funcs_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_unicode_funcs_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-unicode-general-category-get-type"></a><h3>hb_gobject_unicode_general_category_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_unicode_general_category_get_type
+ (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-buffer-cluster-level-get-type"></a><h3>hb_gobject_buffer_cluster_level_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_buffer_cluster_level_get_type
+ (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-feature-get-type"></a><h3>hb_gobject_feature_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_feature_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-glyph-info-get-type"></a><h3>hb_gobject_glyph_info_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_glyph_info_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-glyph-position-get-type"></a><h3>hb_gobject_glyph_position_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_glyph_position_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-segment-properties-get-type"></a><h3>hb_gobject_segment_properties_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_segment_properties_get_type
+ (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-set-get-type"></a><h3>hb_gobject_set_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_set_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-gobject-user-data-key-get-type"></a><h3>hb_gobject_user_data_key_get_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">GType</span>
+hb_gobject_user_data_key_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+</div>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-hb-gobject.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-BLOB:CAPS"></a><h3>HB_GOBJECT_TYPE_BLOB</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_BLOB (hb_gobject_blob_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-BUFFER:CAPS"></a><h3>HB_GOBJECT_TYPE_BUFFER</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_BUFFER (hb_gobject_buffer_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-BUFFER-CONTENT-TYPE:CAPS"></a><h3>HB_GOBJECT_TYPE_BUFFER_CONTENT_TYPE</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_BUFFER_CONTENT_TYPE (hb_gobject_buffer_content_type_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-BUFFER-FLAGS:CAPS"></a><h3>HB_GOBJECT_TYPE_BUFFER_FLAGS</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_BUFFER_FLAGS (hb_gobject_buffer_flags_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-BUFFER-SERIALIZE-FLAGS:CAPS"></a><h3>HB_GOBJECT_TYPE_BUFFER_SERIALIZE_FLAGS</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_BUFFER_SERIALIZE_FLAGS (hb_gobject_buffer_serialize_flags_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-BUFFER-SERIALIZE-FORMAT:CAPS"></a><h3>HB_GOBJECT_TYPE_BUFFER_SERIALIZE_FORMAT</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_BUFFER_SERIALIZE_FORMAT (hb_gobject_buffer_serialize_format_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-DIRECTION:CAPS"></a><h3>HB_GOBJECT_TYPE_DIRECTION</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_DIRECTION (hb_gobject_direction_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-FACE:CAPS"></a><h3>HB_GOBJECT_TYPE_FACE</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_FACE (hb_gobject_face_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-FONT:CAPS"></a><h3>HB_GOBJECT_TYPE_FONT</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_FONT (hb_gobject_font_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-FONT-FUNCS:CAPS"></a><h3>HB_GOBJECT_TYPE_FONT_FUNCS</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_FONT_FUNCS (hb_gobject_font_funcs_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-MEMORY-MODE:CAPS"></a><h3>HB_GOBJECT_TYPE_MEMORY_MODE</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_MEMORY_MODE (hb_gobject_memory_mode_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-OT-LAYOUT-GLYPH-CLASS:CAPS"></a><h3>HB_GOBJECT_TYPE_OT_LAYOUT_GLYPH_CLASS</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_OT_LAYOUT_GLYPH_CLASS (hb_gobject_ot_layout_glyph_class_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-SCRIPT:CAPS"></a><h3>HB_GOBJECT_TYPE_SCRIPT</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_SCRIPT (hb_gobject_script_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-SHAPE-PLAN:CAPS"></a><h3>HB_GOBJECT_TYPE_SHAPE_PLAN</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_SHAPE_PLAN (hb_gobject_shape_plan_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-UNICODE-COMBINING-CLASS:CAPS"></a><h3>HB_GOBJECT_TYPE_UNICODE_COMBINING_CLASS</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_UNICODE_COMBINING_CLASS (hb_gobject_unicode_combining_class_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-UNICODE-FUNCS:CAPS"></a><h3>HB_GOBJECT_TYPE_UNICODE_FUNCS</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_UNICODE_FUNCS (hb_gobject_unicode_funcs_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-UNICODE-GENERAL-CATEGORY:CAPS"></a><h3>HB_GOBJECT_TYPE_UNICODE_GENERAL_CATEGORY</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_UNICODE_GENERAL_CATEGORY (hb_gobject_unicode_general_category_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-BUFFER-CLUSTER-LEVEL:CAPS"></a><h3>HB_GOBJECT_TYPE_BUFFER_CLUSTER_LEVEL</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_BUFFER_CLUSTER_LEVEL (hb_gobject_buffer_cluster_level_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-FEATURE:CAPS"></a><h3>HB_GOBJECT_TYPE_FEATURE</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_FEATURE (hb_gobject_feature_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-GLYPH-INFO:CAPS"></a><h3>HB_GOBJECT_TYPE_GLYPH_INFO</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_GLYPH_INFO (hb_gobject_glyph_info_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-GLYPH-POSITION:CAPS"></a><h3>HB_GOBJECT_TYPE_GLYPH_POSITION</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_GLYPH_POSITION (hb_gobject_glyph_position_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-SEGMENT-PROPERTIES:CAPS"></a><h3>HB_GOBJECT_TYPE_SEGMENT_PROPERTIES</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_SEGMENT_PROPERTIES (hb_gobject_segment_properties_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-SET:CAPS"></a><h3>HB_GOBJECT_TYPE_SET</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_SET (hb_gobject_set_get_type ())
+</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-GOBJECT-TYPE-USER-DATA-KEY:CAPS"></a><h3>HB_GOBJECT_TYPE_USER_DATA_KEY</h3>
+<pre class="programlisting">#define HB_GOBJECT_TYPE_USER_DATA_KEY (hb_gobject_user_data_key_get_type ())
+</pre>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-graphite2.html b/docs/html/harfbuzz-hb-graphite2.html
index 2c57cac..a19c83c 100644
--- a/docs/reference/html/harfbuzz-hb-graphite2.html
+++ b/docs/html/harfbuzz-hb-graphite2.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-graphite2</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
+<title>hb-graphite2: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
<link rel="prev" href="harfbuzz-hb-ft.html" title="hb-ft">
<link rel="next" href="harfbuzz-hb-uniscribe.html" title="hb-uniscribe">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -18,7 +18,7 @@
<a href="#harfbuzz-hb-graphite2.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb-ft.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-uniscribe.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
@@ -73,8 +73,6 @@
</div>
<div class="refsect1">
<a name="harfbuzz-hb-graphite2.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-graphite2.functions_details"></a><h2>Functions</h2>
@@ -82,24 +80,12 @@
<a name="hb-graphite2-face-get-gr-face"></a><h3>hb_graphite2_face_get_gr_face ()</h3>
<pre class="programlisting"><span class="returnvalue">gr_face</span> *
hb_graphite2_face_get_gr_face (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp14441472"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
<a name="hb-graphite2-font-get-gr-font"></a><h3>hb_graphite2_font_get_gr_font ()</h3>
<pre class="programlisting"><span class="returnvalue">gr_font</span> *
hb_graphite2_font_get_gr_font (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp23104224"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
</div>
<div class="refsect1">
@@ -108,13 +94,10 @@ hb_graphite2_font_get_gr_font (<em class="parameter"><code><a class="link" href=
<a name="HB-GRAPHITE2-TAG-SILF:CAPS"></a><h3>HB_GRAPHITE2_TAG_SILF</h3>
<pre class="programlisting">#define HB_GRAPHITE2_TAG_SILF HB_TAG('S','i','l','f')
</pre>
-<p>
-</p>
</div>
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-icu.html b/docs/html/harfbuzz-hb-icu.html
index 307aeb2..906e91c 100644
--- a/docs/reference/html/harfbuzz-hb-icu.html
+++ b/docs/html/harfbuzz-hb-icu.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-icu</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
+<title>hb-icu: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
<link rel="prev" href="harfbuzz-hb-glib.html" title="hb-glib">
<link rel="next" href="harfbuzz-hb-ft.html" title="hb-ft">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -18,7 +18,7 @@
<a href="#harfbuzz-hb-icu.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb-glib.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-ft.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
@@ -68,8 +68,6 @@
</div>
<div class="refsect1">
<a name="harfbuzz-hb-icu.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-icu.functions_details"></a><h2>Functions</h2>
@@ -77,36 +75,18 @@
<a name="hb-icu-get-unicode-funcs"></a><h3>hb_icu_get_unicode_funcs ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="returnvalue">hb_unicode_funcs_t</span></a> *
hb_icu_get_unicode_funcs (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp14126544"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
<a name="hb-icu-script-from-script"></a><h3>hb_icu_script_from_script ()</h3>
<pre class="programlisting"><span class="returnvalue">UScriptCode</span>
hb_icu_script_from_script (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> script</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp20698224"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
<a name="hb-icu-script-to-script"></a><h3>hb_icu_script_to_script ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="returnvalue">hb_script_t</span></a>
hb_icu_script_to_script (<em class="parameter"><code><span class="type">UScriptCode</span> script</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp16604368"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
</div>
<div class="refsect1">
@@ -114,7 +94,6 @@ hb_icu_script_to_script (<em class="parameter"><code><span class="type">UScriptC
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/html/harfbuzz-hb-ot-font.html b/docs/html/harfbuzz-hb-ot-font.html
new file mode 100644
index 0000000..289d871
--- /dev/null
+++ b/docs/html/harfbuzz-hb-ot-font.html
@@ -0,0 +1,70 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>hb-ot-font: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
+<link rel="prev" href="harfbuzz-hb-ot-tag.html" title="hb-ot-tag">
+<link rel="next" href="harfbuzz-hb-ot-shape.html" title="hb-ot-shape">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+ <a href="#harfbuzz-hb-ot-font.description" class="shortcut">Description</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="harfbuzz-hb-ot-tag.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="harfbuzz-hb-ot-shape.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="refentry">
+<a name="harfbuzz-hb-ot-font"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="harfbuzz-hb-ot-font.top_of_page"></a>hb-ot-font</span></h2>
+<p>hb-ot-font</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="harfbuzz-hb-ot-font.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
+<tbody><tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-ot-font.html#hb-ot-font-set-funcs" title="hb_ot_font_set_funcs ()">hb_ot_font_set_funcs</a> <span class="c_punctuation">()</span>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-hb-ot-font.description"></a><h2>Description</h2>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-hb-ot-font.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="hb-ot-font-set-funcs"></a><h3>hb_ot_font_set_funcs ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_ot_font_set_funcs (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>);</pre>
+<p class="since">Since: <a class="link" href="api-index-0-9-28.html#api-index-0.9.28">0.9.28</a></p>
+</div>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-hb-ot-font.other_details"></a><h2>Types and Values</h2>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-ot-layout.html b/docs/html/harfbuzz-hb-ot-layout.html
index d7231db..0da9306 100644
--- a/docs/reference/html/harfbuzz-hb-ot-layout.html
+++ b/docs/html/harfbuzz-hb-ot-layout.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-ot-layout</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
+<title>hb-ot-layout: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
<link rel="prev" href="harfbuzz-hb-ot.html" title="hb-ot">
<link rel="next" href="harfbuzz-hb-ot-tag.html" title="hb-ot-tag">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -19,7 +19,7 @@
<a href="#harfbuzz-hb-ot-layout.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb-ot.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-ot-tag.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
@@ -239,6 +239,14 @@
<a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-shape-plan-collect-lookups" title="hb_ot_shape_plan_collect_lookups ()">hb_ot_shape_plan_collect_lookups</a> <span class="c_punctuation">()</span>
</td>
</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-language-get-required-feature-index" title="hb_ot_layout_language_get_required_feature_index ()">hb_ot_layout_language_get_required_feature_index</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
</tbody>
</table></div>
</div>
@@ -275,6 +283,10 @@
<td class="function_name"><a class="link" href="harfbuzz-hb-ot-layout.html#HB-OT-TAG-GSUB:CAPS" title="HB_OT_TAG_GSUB">HB_OT_TAG_GSUB</a></td>
</tr>
<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-ot-layout.html#HB-OT-TAG-JSTF:CAPS" title="HB_OT_TAG_JSTF">HB_OT_TAG_JSTF</a></td>
+</tr>
+<tr>
<td class="datatype_keyword">enum</td>
<td class="function_name"><a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-glyph-class-t" title="enum hb_ot_layout_glyph_class_t">hb_ot_layout_glyph_class_t</a></td>
</tr>
@@ -283,14 +295,12 @@
</div>
<div class="refsect1">
<a name="harfbuzz-hb-ot-layout.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen"> GEnum
+<pre class="screen"> <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a>
<span class="lineart">╰──</span> hb_ot_layout_glyph_class_t
</pre>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-ot-layout.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-ot-layout.functions_details"></a><h2>Functions</h2>
@@ -303,8 +313,7 @@ hb_ot_layout_collect_lookups (<em class="parameter"><code><a class="link" href="
<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> *languages</code></em>,
<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> *features</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *lookup_indexes</code></em>);</pre>
-<p>
-</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-8.html#api-index-0.9.8">0.9.8</a></p>
</div>
<hr>
<div class="refsect2">
@@ -316,12 +325,7 @@ hb_ot_layout_feature_get_lookups (<em class="parameter"><code><a class="link" hr
<em class="parameter"><code>unsigned <span class="type">int</span> start_offset</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *lookup_count</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *lookup_indexes</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp26122576"></a><h4>Returns</h4>
-<p></p>
-</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -332,12 +336,6 @@ hb_ot_layout_get_attach_points (<em class="parameter"><code><a class="link" href
<em class="parameter"><code>unsigned <span class="type">int</span> start_offset</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *point_count</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *point_array</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp26138240"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -345,12 +343,7 @@ hb_ot_layout_get_attach_points (<em class="parameter"><code><a class="link" href
<pre class="programlisting"><a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-glyph-class-t" title="enum hb_ot_layout_glyph_class_t"><span class="returnvalue">hb_ot_layout_glyph_class_t</span></a>
hb_ot_layout_get_glyph_class (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> glyph</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp26148336"></a><h4>Returns</h4>
-<p></p>
-</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -359,8 +352,7 @@ hb_ot_layout_get_glyph_class (<em class="parameter"><code><a class="link" href="
hb_ot_layout_get_glyphs_in_class (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-glyph-class-t" title="enum hb_ot_layout_glyph_class_t"><span class="type">hb_ot_layout_glyph_class_t</span></a> klass</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *glyphs</code></em>);</pre>
-<p>
-</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -372,12 +364,6 @@ hb_ot_layout_get_ligature_carets (<em class="parameter"><code><a class="link" hr
<em class="parameter"><code>unsigned <span class="type">int</span> start_offset</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *caret_count</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="type">hb_position_t</span></a> *caret_array</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp26175760"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -389,12 +375,7 @@ hb_ot_layout_get_size_params (<em class="parameter"><code><a class="link" href="
<em class="parameter"><code>unsigned <span class="type">int</span> *subfamily_name_id</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *range_start</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *range_end</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp26193232"></a><h4>Returns</h4>
-<p></p>
-</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-10.html#api-index-0.9.10">0.9.10</a></p>
</div>
<hr>
<div class="refsect2">
@@ -405,48 +386,24 @@ hb_ot_layout_get_size_params (<em class="parameter"><code><a class="link" href="
<em class="parameter"><code>unsigned <span class="type">int</span> lookup_index</code></em>,
<em class="parameter"><code>const <span class="type">hb_ot_layout_glyph_sequence_t</span> *sequence</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp26209952"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
<a name="hb-ot-layout-has-glyph-classes"></a><h3>hb_ot_layout_has_glyph_classes ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
hb_ot_layout_has_glyph_classes (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp26218384"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
<a name="hb-ot-layout-has-positioning"></a><h3>hb_ot_layout_has_positioning ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
hb_ot_layout_has_positioning (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp26226816"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
<a name="hb-ot-layout-has-substitution"></a><h3>hb_ot_layout_has_substitution ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
hb_ot_layout_has_substitution (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp26235248"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -458,12 +415,6 @@ hb_ot_layout_language_find_feature (<em class="parameter"><code><a class="link"
<em class="parameter"><code>unsigned <span class="type">int</span> language_index</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> feature_tag</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *feature_index</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp26252368"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -477,12 +428,6 @@ hb_ot_layout_language_get_feature_indexes
<em class="parameter"><code>unsigned <span class="type">int</span> start_offset</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *feature_count</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *feature_indexes</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp26271360"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -496,12 +441,6 @@ hb_ot_layout_language_get_feature_tags
<em class="parameter"><code>unsigned <span class="type">int</span> start_offset</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *feature_count</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> *feature_tags</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp26290368"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -514,6 +453,7 @@ hb_ot_layout_language_get_required_feature
<em class="parameter"><code>unsigned <span class="type">int</span> language_index</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *feature_index</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> *feature_tag</code></em>);</pre>
+<p class="since">Since: <a class="link" href="api-index-0-9-30.html#api-index-0.9.30">0.9.30</a></p>
</div>
<hr>
<div class="refsect2">
@@ -526,8 +466,7 @@ hb_ot_layout_lookup_collect_glyphs (<em class="parameter"><code><a class="link"
<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *glyphs_input</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *glyphs_after</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *glyphs_output</code></em>);</pre>
-<p>
-</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -537,8 +476,7 @@ hb_ot_layout_lookup_substitute_closure
(<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> lookup_index</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *glyphs</code></em>);</pre>
-<p>
-</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -549,12 +487,7 @@ hb_ot_layout_lookup_would_substitute (<em class="parameter"><code><a class="link
<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *glyphs</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> glyphs_length</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="type">hb_bool_t</span></a> zero_context</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp26347808"></a><h4>Returns</h4>
-<p></p>
-</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -565,12 +498,6 @@ hb_ot_layout_script_find_language (<em class="parameter"><code><a class="link" h
<em class="parameter"><code>unsigned <span class="type">int</span> script_index</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> language_tag</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *language_index</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp23893888"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -582,12 +509,6 @@ hb_ot_layout_script_get_language_tags (<em class="parameter"><code><a class="lin
<em class="parameter"><code>unsigned <span class="type">int</span> start_offset</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *language_count</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> *language_tags</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp23910848"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -598,12 +519,6 @@ hb_ot_layout_table_choose_script (<em class="parameter"><code><a class="link" hr
<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> *script_tags</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *script_index</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> *chosen_script</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp23926160"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -613,12 +528,6 @@ hb_ot_layout_table_find_script (<em class="parameter"><code><a class="link" href
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> table_tag</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> script_tag</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *script_index</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp23939664"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -629,12 +538,6 @@ hb_ot_layout_table_get_feature_tags (<em class="parameter"><code><a class="link"
<em class="parameter"><code>unsigned <span class="type">int</span> start_offset</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *feature_count</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> *feature_tags</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp23954912"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -645,12 +548,6 @@ hb_ot_layout_table_get_script_tags (<em class="parameter"><code><a class="link"
<em class="parameter"><code>unsigned <span class="type">int</span> start_offset</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *script_count</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> *script_tags</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp23970400"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -658,6 +555,7 @@ hb_ot_layout_table_get_script_tags (<em class="parameter"><code><a class="link"
<pre class="programlisting">unsigned <span class="returnvalue">int</span>
hb_ot_layout_table_get_lookup_count (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> table_tag</code></em>);</pre>
+<p class="since">Since: <a class="link" href="api-index-0-9-22.html#api-index-0.9.22">0.9.22</a></p>
</div>
<hr>
<div class="refsect2">
@@ -666,8 +564,18 @@ hb_ot_layout_table_get_lookup_count (<em class="parameter"><code><a class="link"
hb_ot_shape_plan_collect_lookups (<em class="parameter"><code><a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-t"><span class="type">hb_shape_plan_t</span></a> *shape_plan</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> table_tag</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *lookup_indexes</code></em>);</pre>
-<p>
-</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-ot-layout-language-get-required-feature-index"></a><h3>hb_ot_layout_language_get_required_feature_index ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+hb_ot_layout_language_get_required_feature_index
+ (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> table_tag</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> script_index</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> language_index</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> *feature_index</code></em>);</pre>
</div>
</div>
<div class="refsect1">
@@ -676,56 +584,48 @@ hb_ot_shape_plan_collect_lookups (<em class="parameter"><code><a class="link" hr
<a name="HB-OT-LAYOUT-DEFAULT-LANGUAGE-INDEX:CAPS"></a><h3>HB_OT_LAYOUT_DEFAULT_LANGUAGE_INDEX</h3>
<pre class="programlisting">#define HB_OT_LAYOUT_DEFAULT_LANGUAGE_INDEX 0xFFFFu
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-OT-LAYOUT-NO-FEATURE-INDEX:CAPS"></a><h3>HB_OT_LAYOUT_NO_FEATURE_INDEX</h3>
<pre class="programlisting">#define HB_OT_LAYOUT_NO_FEATURE_INDEX 0xFFFFu
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-OT-LAYOUT-NO-SCRIPT-INDEX:CAPS"></a><h3>HB_OT_LAYOUT_NO_SCRIPT_INDEX</h3>
<pre class="programlisting">#define HB_OT_LAYOUT_NO_SCRIPT_INDEX 0xFFFFu
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-OT-TAG-GDEF:CAPS"></a><h3>HB_OT_TAG_GDEF</h3>
<pre class="programlisting">#define HB_OT_TAG_GDEF HB_TAG('G','D','E','F')
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-OT-TAG-GPOS:CAPS"></a><h3>HB_OT_TAG_GPOS</h3>
<pre class="programlisting">#define HB_OT_TAG_GPOS HB_TAG('G','P','O','S')
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-OT-TAG-GSUB:CAPS"></a><h3>HB_OT_TAG_GSUB</h3>
<pre class="programlisting">#define HB_OT_TAG_GSUB HB_TAG('G','S','U','B')
</pre>
-<p>
-</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="HB-OT-TAG-JSTF:CAPS"></a><h3>HB_OT_TAG_JSTF</h3>
+<pre class="programlisting">#define HB_OT_TAG_JSTF HB_TAG('J','S','T','F')
+</pre>
</div>
<hr>
<div class="refsect2">
<a name="hb-ot-layout-glyph-class-t"></a><h3>enum hb_ot_layout_glyph_class_t</h3>
-<p>
-</p>
<div class="refsect3">
-<a name="idp24022880"></a><h4>Members</h4>
+<a name="hb-ot-layout-glyph-class-t.members"></a><h4>Members</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="300px" class="enum_members_name">
@@ -735,28 +635,28 @@ hb_ot_shape_plan_collect_lookups (<em class="parameter"><code><a class="link" hr
<tbody>
<tr>
<td class="enum_member_name"><p><a name="HB-OT-LAYOUT-GLYPH-CLASS-UNCLASSIFIED:CAPS"></a>HB_OT_LAYOUT_GLYPH_CLASS_UNCLASSIFIED</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-OT-LAYOUT-GLYPH-CLASS-BASE-GLYPH:CAPS"></a>HB_OT_LAYOUT_GLYPH_CLASS_BASE_GLYPH</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-OT-LAYOUT-GLYPH-CLASS-LIGATURE:CAPS"></a>HB_OT_LAYOUT_GLYPH_CLASS_LIGATURE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-OT-LAYOUT-GLYPH-CLASS-MARK:CAPS"></a>HB_OT_LAYOUT_GLYPH_CLASS_MARK</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-OT-LAYOUT-GLYPH-CLASS-COMPONENT:CAPS"></a>HB_OT_LAYOUT_GLYPH_CLASS_COMPONENT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
</tbody>
</table></div>
@@ -765,7 +665,6 @@ hb_ot_shape_plan_collect_lookups (<em class="parameter"><code><a class="link" hr
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/html/harfbuzz-hb-ot-shape.html b/docs/html/harfbuzz-hb-ot-shape.html
new file mode 100644
index 0000000..fa22099
--- /dev/null
+++ b/docs/html/harfbuzz-hb-ot-shape.html
@@ -0,0 +1,74 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>hb-ot-shape: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
+<link rel="prev" href="harfbuzz-hb-ot-font.html" title="hb-ot-font">
+<link rel="next" href="harfbuzz-hb-shape-plan.html" title="hb-shape-plan">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
+ <a href="#harfbuzz-hb-ot-shape.description" class="shortcut">Description</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="harfbuzz-hb-ot-font.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="harfbuzz-hb-shape-plan.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="refentry">
+<a name="harfbuzz-hb-ot-shape"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="harfbuzz-hb-ot-shape.top_of_page"></a>hb-ot-shape</span></h2>
+<p>hb-ot-shape</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="harfbuzz-hb-ot-shape.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
+<tbody><tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-ot-shape.html#hb-ot-shape-glyphs-closure" title="hb_ot_shape_glyphs_closure ()">hb_ot_shape_glyphs_closure</a> <span class="c_punctuation">()</span>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-hb-ot-shape.description"></a><h2>Description</h2>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-hb-ot-shape.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="hb-ot-shape-glyphs-closure"></a><h3>hb_ot_shape_glyphs_closure ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+hb_ot_shape_glyphs_closure (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>const <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *features</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> num_features</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *glyphs</code></em>);</pre>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+</div>
+<div class="refsect1">
+<a name="harfbuzz-hb-ot-shape.other_details"></a><h2>Types and Values</h2>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-ot-tag.html b/docs/html/harfbuzz-hb-ot-tag.html
index 058623f..ea49a15 100644
--- a/docs/reference/html/harfbuzz-hb-ot-tag.html
+++ b/docs/html/harfbuzz-hb-ot-tag.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-ot-tag</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
+<title>hb-ot-tag: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
<link rel="prev" href="harfbuzz-hb-ot-layout.html" title="hb-ot-layout">
-<link rel="next" href="harfbuzz-hb-shape-plan.html" title="hb-shape-plan">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<link rel="next" href="harfbuzz-hb-ot-font.html" title="hb-ot-font">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -18,9 +18,9 @@
<a href="#harfbuzz-hb-ot-tag.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb-ot-layout.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="harfbuzz-hb-shape-plan.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<td><a accesskey="n" href="harfbuzz-hb-ot-font.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="harfbuzz-hb-ot-tag"></a><div class="titlepage"></div>
@@ -49,7 +49,7 @@
</tr>
<tr>
<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-language-t"><span class="returnvalue">hb_language_t</span></a>
+<a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="returnvalue">hb_language_t</span></a>
</td>
<td class="function_name">
<a class="link" href="harfbuzz-hb-ot-tag.html#hb-ot-tag-to-language" title="hb_ot_tag_to_language ()">hb_ot_tag_to_language</a> <span class="c_punctuation">()</span>
@@ -95,45 +95,31 @@
</div>
<div class="refsect1">
<a name="harfbuzz-hb-ot-tag.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-ot-tag.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="hb-ot-tag-from-language"></a><h3>hb_ot_tag_from_language ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="returnvalue">hb_tag_t</span></a>
-hb_ot_tag_from_language (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-language-t"><span class="type">hb_language_t</span></a> language</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp16597424"></a><h4>Returns</h4>
-<p></p>
-</div>
+hb_ot_tag_from_language (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="type">hb_language_t</span></a> language</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="hb-ot-tag-to-language"></a><h3>hb_ot_tag_to_language ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-language-t"><span class="returnvalue">hb_language_t</span></a>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="returnvalue">hb_language_t</span></a>
hb_ot_tag_to_language (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> tag</code></em>);</pre>
-<p>
-</p>
<div class="refsect3">
-<a name="idp15287904"></a><h4>Returns</h4>
-<p></p>
+<a name="hb-ot-tag-to-language.returns"></a><h4>Returns</h4>
+<p>. </p>
+<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-ot-tag-to-script"></a><h3>hb_ot_tag_to_script ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="returnvalue">hb_script_t</span></a>
hb_ot_tag_to_script (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> tag</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp14593888"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -142,8 +128,6 @@ hb_ot_tag_to_script (<em class="parameter"><code><a class="link" href="harfbuzz-
hb_ot_tags_from_script (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> script</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> *script_tag_1</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> *script_tag_2</code></em>);</pre>
-<p>
-</p>
</div>
</div>
<div class="refsect1">
@@ -152,21 +136,16 @@ hb_ot_tags_from_script (<em class="parameter"><code><a class="link" href="harfbu
<a name="HB-OT-TAG-DEFAULT-LANGUAGE:CAPS"></a><h3>HB_OT_TAG_DEFAULT_LANGUAGE</h3>
<pre class="programlisting">#define HB_OT_TAG_DEFAULT_LANGUAGE HB_TAG ('d', 'f', 'l', 't')
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-OT-TAG-DEFAULT-SCRIPT:CAPS"></a><h3>HB_OT_TAG_DEFAULT_SCRIPT</h3>
<pre class="programlisting">#define HB_OT_TAG_DEFAULT_SCRIPT HB_TAG ('D', 'F', 'L', 'T')
</pre>
-<p>
-</p>
</div>
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-ot.html b/docs/html/harfbuzz-hb-ot.html
index 9c48aad..00ecee7 100644
--- a/docs/reference/html/harfbuzz-hb-ot.html
+++ b/docs/html/harfbuzz-hb-ot.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-ot</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
+<title>hb-ot: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
<link rel="prev" href="harfbuzz-hb-set.html" title="hb-set">
<link rel="next" href="harfbuzz-hb-ot-layout.html" title="hb-ot-layout">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -18,7 +18,7 @@
<a href="#harfbuzz-hb-ot.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb-set.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-ot-layout.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
@@ -33,18 +33,16 @@
</tr></table></div>
<div class="refsect1">
<a name="harfbuzz-hb-ot.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-ot.functions_details"></a><h2>Functions</h2>
+<p></p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-ot.other_details"></a><h2>Types and Values</h2>
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-set.html b/docs/html/harfbuzz-hb-set.html
index 87ce9bf..7b57884 100644
--- a/docs/reference/html/harfbuzz-hb-set.html
+++ b/docs/html/harfbuzz-hb-set.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-set</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
+<title>hb-set: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
<link rel="prev" href="harfbuzz-hb-deprecated.html" title="hb-deprecated">
<link rel="next" href="harfbuzz-hb-ot.html" title="hb-ot">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -19,7 +19,7 @@
<a href="#harfbuzz-hb-set.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb-deprecated.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-ot.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
@@ -41,10 +41,6 @@
</colgroup>
<tbody>
<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-set.html#HB-SET-VALUE-INVALID:CAPS" title="HB_SET_VALUE_INVALID">HB_SET_VALUE_INVALID</a></td>
-</tr>
-<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
@@ -261,38 +257,36 @@
<col width="150px" class="name">
<col class="description">
</colgroup>
-<tbody><tr>
+<tbody>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-set.html#HB-SET-VALUE-INVALID:CAPS" title="HB_SET_VALUE_INVALID">HB_SET_VALUE_INVALID</a></td>
+</tr>
+<tr>
<td class="typedef_keyword">typedef</td>
<td class="function_name"><a class="link" href="harfbuzz-hb-set.html#hb-set-t">hb_set_t</a></td>
-</tr></tbody>
+</tr>
+</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-set.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen"> GBoxed
+<pre class="screen"> <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html">GBoxed</a>
<span class="lineart">╰──</span> hb_set_t
</pre>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-set.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-set.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
-<a name="HB-SET-VALUE-INVALID:CAPS"></a><h3>HB_SET_VALUE_INVALID</h3>
-<pre class="programlisting">#define HB_SET_VALUE_INVALID ((hb_codepoint_t) -1)
-</pre>
-</div>
-<hr>
-<div class="refsect2">
<a name="hb-set-add"></a><h3>hb_set_add ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
hb_set_add (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> codepoint</code></em>);</pre>
<div class="refsect3">
-<a name="idp20721456"></a><h4>Parameters</h4>
+<a name="hb-set-add.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -306,7 +300,7 @@ hb_set_add (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.ht
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -316,7 +310,7 @@ hb_set_add_range (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> first</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> last</code></em>);</pre>
<div class="refsect3">
-<a name="idp23182976"></a><h4>Parameters</h4>
+<a name="hb-set-add-range.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -330,7 +324,7 @@ hb_set_add_range (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -338,7 +332,7 @@ hb_set_add_range (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
hb_set_allocation_successful (<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>);</pre>
<div class="refsect3">
-<a name="idp23199248"></a><h4>Parameters</h4>
+<a name="hb-set-allocation-successful.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -352,11 +346,7 @@ hb_set_allocation_successful (<em class="parameter"><code>const <a class="link"
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp23207648"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -364,7 +354,7 @@ hb_set_allocation_successful (<em class="parameter"><code>const <a class="link"
<pre class="programlisting"><span class="returnvalue">void</span>
hb_set_clear (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>);</pre>
<div class="refsect3">
-<a name="idp23216672"></a><h4>Parameters</h4>
+<a name="hb-set-clear.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -378,19 +368,20 @@ hb_set_clear (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-set-create"></a><h3>hb_set_create ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="returnvalue">hb_set_t</span></a> *
hb_set_create (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-</p>
+<p><span class="annotation">[Xconstructor]</span></p>
<div class="refsect3">
-<a name="idp23231984"></a><h4>Returns</h4>
-<p></p>
+<a name="hb-set-create.returns"></a><h4>Returns</h4>
+<p>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -399,7 +390,7 @@ hb_set_create (<em class="parameter"><code><span class="type">void</span></code>
hb_set_del (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> codepoint</code></em>);</pre>
<div class="refsect3">
-<a name="idp23242016"></a><h4>Parameters</h4>
+<a name="hb-set-del.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -413,7 +404,7 @@ hb_set_del (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.ht
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -423,7 +414,7 @@ hb_set_del_range (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> first</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> last</code></em>);</pre>
<div class="refsect3">
-<a name="idp23261248"></a><h4>Parameters</h4>
+<a name="hb-set-del-range.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -437,15 +428,16 @@ hb_set_del_range (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-set-destroy"></a><h3>hb_set_destroy ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
hb_set_destroy (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp23277248"></a><h4>Parameters</h4>
+<a name="hb-set-destroy.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -459,7 +451,7 @@ hb_set_destroy (<em class="parameter"><code><a class="link" href="harfbuzz-hb-se
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -467,11 +459,11 @@ hb_set_destroy (<em class="parameter"><code><a class="link" href="harfbuzz-hb-se
<pre class="programlisting"><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="returnvalue">hb_set_t</span></a> *
hb_set_get_empty (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<div class="refsect3">
-<a name="idp23292640"></a><h4>Returns</h4>
+<a name="hb-set-get-empty.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -480,7 +472,7 @@ hb_set_get_empty (<em class="parameter"><code><span class="type">void</span></co
hb_set_get_max (<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>);</pre>
<p>Finds the maximum number in the set.</p>
<div class="refsect3">
-<a name="idp23303952"></a><h4>Parameters</h4>
+<a name="hb-set-get-max.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -495,11 +487,10 @@ hb_set_get_max (<em class="parameter"><code>const <a class="link" href="harfbuzz
</table></div>
</div>
<div class="refsect3">
-<a name="idp23312352"></a><h4>Returns</h4>
+<a name="hb-set-get-max.returns"></a><h4>Returns</h4>
<p> minimum of the set, or <a class="link" href="harfbuzz-hb-set.html#HB-SET-VALUE-INVALID:CAPS" title="HB_SET_VALUE_INVALID"><code class="literal">HB_SET_VALUE_INVALID</code></a> if set is empty.</p>
-<p></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -508,7 +499,7 @@ hb_set_get_max (<em class="parameter"><code>const <a class="link" href="harfbuzz
hb_set_get_min (<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>);</pre>
<p>Finds the minimum number in the set.</p>
<div class="refsect3">
-<a name="idp23323888"></a><h4>Parameters</h4>
+<a name="hb-set-get-min.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -523,11 +514,10 @@ hb_set_get_min (<em class="parameter"><code>const <a class="link" href="harfbuzz
</table></div>
</div>
<div class="refsect3">
-<a name="idp23332288"></a><h4>Returns</h4>
+<a name="hb-set-get-min.returns"></a><h4>Returns</h4>
<p> minimum of the set, or <a class="link" href="harfbuzz-hb-set.html#HB-SET-VALUE-INVALID:CAPS" title="HB_SET_VALUE_INVALID"><code class="literal">HB_SET_VALUE_INVALID</code></a> if set is empty.</p>
-<p></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -536,7 +526,7 @@ hb_set_get_min (<em class="parameter"><code>const <a class="link" href="harfbuzz
hb_set_get_population (<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>);</pre>
<p>Returns the number of numbers in the set.</p>
<div class="refsect3">
-<a name="idp23343984"></a><h4>Parameters</h4>
+<a name="hb-set-get-population.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -551,11 +541,10 @@ hb_set_get_population (<em class="parameter"><code>const <a class="link" href="h
</table></div>
</div>
<div class="refsect3">
-<a name="idp23352384"></a><h4>Returns</h4>
+<a name="hb-set-get-population.returns"></a><h4>Returns</h4>
<p> set population.</p>
-<p></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -563,8 +552,9 @@ hb_set_get_population (<em class="parameter"><code>const <a class="link" href="h
<pre class="programlisting"><span class="returnvalue">void</span> *
hb_set_get_user_data (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-user-data-key-t"><span class="type">hb_user_data_key_t</span></a> *key</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp23363568"></a><h4>Parameters</h4>
+<a name="hb-set-get-user-data.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -579,11 +569,11 @@ hb_set_get_user_data (<em class="parameter"><code><a class="link" href="harfbuzz
</table></div>
</div>
<div class="refsect3">
-<a name="idp23371968"></a><h4>Returns</h4>
+<a name="hb-set-get-user-data.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -592,7 +582,7 @@ hb_set_get_user_data (<em class="parameter"><code><a class="link" href="harfbuzz
hb_set_has (<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> codepoint</code></em>);</pre>
<div class="refsect3">
-<a name="idp23384384"></a><h4>Parameters</h4>
+<a name="hb-set-has.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -606,11 +596,7 @@ hb_set_has (<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp23392784"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -619,7 +605,7 @@ hb_set_has (<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-
hb_set_intersect (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>,
<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *other</code></em>);</pre>
<div class="refsect3">
-<a name="idp23403600"></a><h4>Parameters</h4>
+<a name="hb-set-intersect.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -633,7 +619,7 @@ hb_set_intersect (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -641,7 +627,7 @@ hb_set_intersect (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
<pre class="programlisting"><span class="returnvalue">void</span>
hb_set_invert (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>);</pre>
<div class="refsect3">
-<a name="idp23419600"></a><h4>Parameters</h4>
+<a name="hb-set-invert.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -655,7 +641,7 @@ hb_set_invert (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-10.html#api-index-0.9.10">0.9.10</a></p>
</div>
<hr>
<div class="refsect2">
@@ -663,7 +649,7 @@ hb_set_invert (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
hb_set_is_empty (<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>);</pre>
<div class="refsect3">
-<a name="idp26531232"></a><h4>Parameters</h4>
+<a name="hb-set-is-empty.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -677,11 +663,7 @@ hb_set_is_empty (<em class="parameter"><code>const <a class="link" href="harfbuz
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp26538736"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -690,7 +672,7 @@ hb_set_is_empty (<em class="parameter"><code>const <a class="link" href="harfbuz
hb_set_is_equal (<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>,
<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *other</code></em>);</pre>
<div class="refsect3">
-<a name="idp26548192"></a><h4>Parameters</h4>
+<a name="hb-set-is-equal.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -704,11 +686,7 @@ hb_set_is_equal (<em class="parameter"><code>const <a class="link" href="harfbuz
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp26555696"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -717,7 +695,7 @@ hb_set_is_equal (<em class="parameter"><code>const <a class="link" href="harfbuz
hb_set_next (<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *codepoint</code></em>);</pre>
<div class="refsect3">
-<a name="idp26564896"></a><h4>Parameters</h4>
+<a name="hb-set-next.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -739,11 +717,10 @@ hb_set_next (<em class="parameter"><code>const <a class="link" href="harfbuzz-hb
</table></div>
</div>
<div class="refsect3">
-<a name="idp26575728"></a><h4>Returns</h4>
+<a name="hb-set-next.returns"></a><h4>Returns</h4>
<p> whether there was a next value.</p>
-<p></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -757,7 +734,7 @@ hb_set_next_range (<em class="parameter"><code>const <a class="link" href="harfb
are greater than current value of <em class="parameter"><code>last</code></em>
.</p>
<div class="refsect3">
-<a name="idp26588656"></a><h4>Parameters</h4>
+<a name="hb-set-next-range.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -784,19 +761,19 @@ are greater than current value of <em class="parameter"><code>last</code></em>
</table></div>
</div>
<div class="refsect3">
-<a name="idp26602816"></a><h4>Returns</h4>
+<a name="hb-set-next-range.returns"></a><h4>Returns</h4>
<p> whether there was a next range.</p>
-<p></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-set-reference"></a><h3>hb_set_reference ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="returnvalue">hb_set_t</span></a> *
hb_set_reference (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp26611040"></a><h4>Parameters</h4>
+<a name="hb-set-reference.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -811,11 +788,11 @@ hb_set_reference (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
</table></div>
</div>
<div class="refsect3">
-<a name="idp26618544"></a><h4>Returns</h4>
+<a name="hb-set-reference.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -824,7 +801,7 @@ hb_set_reference (<em class="parameter"><code><a class="link" href="harfbuzz-hb-
hb_set_set (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>,
<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *other</code></em>);</pre>
<div class="refsect3">
-<a name="idp26629264"></a><h4>Parameters</h4>
+<a name="hb-set-set.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -838,7 +815,7 @@ hb_set_set (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.ht
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -849,8 +826,9 @@ hb_set_set_user_data (<em class="parameter"><code><a class="link" href="harfbuzz
<em class="parameter"><code><span class="type">void</span> *data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="type">hb_bool_t</span></a> replace</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp26648800"></a><h4>Parameters</h4>
+<a name="hb-set-set-user-data.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -872,11 +850,7 @@ hb_set_set_user_data (<em class="parameter"><code><a class="link" href="harfbuzz
</tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp26659200"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -885,7 +859,7 @@ hb_set_set_user_data (<em class="parameter"><code><a class="link" href="harfbuzz
hb_set_subtract (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>,
<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *other</code></em>);</pre>
<div class="refsect3">
-<a name="idp26668512"></a><h4>Parameters</h4>
+<a name="hb-set-subtract.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -899,7 +873,7 @@ hb_set_subtract (<em class="parameter"><code><a class="link" href="harfbuzz-hb-s
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -908,7 +882,7 @@ hb_set_subtract (<em class="parameter"><code><a class="link" href="harfbuzz-hb-s
hb_set_symmetric_difference (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>,
<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *other</code></em>);</pre>
<div class="refsect3">
-<a name="idp26684064"></a><h4>Parameters</h4>
+<a name="hb-set-symmetric-difference.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -922,7 +896,7 @@ hb_set_symmetric_difference (<em class="parameter"><code><a class="link" href="h
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -931,7 +905,7 @@ hb_set_symmetric_difference (<em class="parameter"><code><a class="link" href="h
hb_set_union (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *set</code></em>,
<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-set.html#hb-set-t"><span class="type">hb_set_t</span></a> *other</code></em>);</pre>
<div class="refsect3">
-<a name="idp26699616"></a><h4>Parameters</h4>
+<a name="hb-set-union.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -945,22 +919,25 @@ hb_set_union (<em class="parameter"><code><a class="link" href="harfbuzz-hb-set.
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-set.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
+<a name="HB-SET-VALUE-INVALID:CAPS"></a><h3>HB_SET_VALUE_INVALID</h3>
+<pre class="programlisting">#define HB_SET_VALUE_INVALID ((hb_codepoint_t) -1)
+</pre>
+</div>
+<hr>
+<div class="refsect2">
<a name="hb-set-t"></a><h3>hb_set_t</h3>
<pre class="programlisting">typedef struct hb_set_t hb_set_t;
</pre>
-<p>
-</p>
</div>
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-shape-plan.html b/docs/html/harfbuzz-hb-shape-plan.html
index d612552..aee3168 100644
--- a/docs/reference/html/harfbuzz-hb-shape-plan.html
+++ b/docs/html/harfbuzz-hb-shape-plan.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-shape-plan</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
-<link rel="prev" href="harfbuzz-hb-ot-tag.html" title="hb-ot-tag">
+<title>hb-shape-plan: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
+<link rel="prev" href="harfbuzz-hb-ot-shape.html" title="hb-ot-shape">
<link rel="next" href="harfbuzz-hb-glib.html" title="hb-glib">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -19,8 +19,8 @@
<a href="#harfbuzz-hb-shape-plan.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="harfbuzz-hb-ot-tag.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="harfbuzz-hb-ot-shape.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-glib.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
@@ -129,14 +129,12 @@
</div>
<div class="refsect1">
<a name="harfbuzz-hb-shape-plan.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen"> GBoxed
+<pre class="screen"> <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html">GBoxed</a>
<span class="lineart">╰──</span> hb_shape_plan_t
</pre>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-shape-plan.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-shape-plan.functions_details"></a><h2>Functions</h2>
@@ -144,28 +142,51 @@
<a name="hb-shape-plan-create"></a><h3>hb_shape_plan_create ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-t"><span class="returnvalue">hb_shape_plan_t</span></a> *
hb_shape_plan_create (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>,
- <em class="parameter"><code>const <a class="link" href="harfbuzz-hb-buffer.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> *props</code></em>,
- <em class="parameter"><code>const <a class="link" href="harfbuzz-hb-shape.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *user_features</code></em>,
+ <em class="parameter"><code>const <a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> *props</code></em>,
+ <em class="parameter"><code>const <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *user_features</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> num_user_features</code></em>,
<em class="parameter"><code>const <span class="type">char</span> * const *shaper_list</code></em>);</pre>
-<p>
-</p>
+<p><span class="annotation">[Xconstructor]</span></p>
<div class="refsect3">
-<a name="idp14878704"></a><h4>Returns</h4>
-<p></p>
+<a name="hb-shape-plan-create.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>user_features</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=num_user_features]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>shaper_list</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1]</span></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="hb-shape-plan-create.returns"></a><h4>Returns</h4>
+<p>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-shape-plan-create-cached"></a><h3>hb_shape_plan_create_cached ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-t"><span class="returnvalue">hb_shape_plan_t</span></a> *
hb_shape_plan_create_cached (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t"><span class="type">hb_face_t</span></a> *face</code></em>,
- <em class="parameter"><code>const <a class="link" href="harfbuzz-hb-buffer.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> *props</code></em>,
- <em class="parameter"><code>const <a class="link" href="harfbuzz-hb-shape.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *user_features</code></em>,
+ <em class="parameter"><code>const <a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> *props</code></em>,
+ <em class="parameter"><code>const <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *user_features</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> num_user_features</code></em>,
<em class="parameter"><code>const <span class="type">char</span> * const *shaper_list</code></em>);</pre>
<div class="refsect3">
-<a name="idp16920256"></a><h4>Parameters</h4>
+<a name="hb-shape-plan-create-cached.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -187,19 +208,20 @@ hb_shape_plan_create_cached (<em class="parameter"><code><a class="link" href="h
</table></div>
</div>
<div class="refsect3">
-<a name="idp14478448"></a><h4>Returns</h4>
+<a name="hb-shape-plan-create-cached.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-shape-plan-destroy"></a><h3>hb_shape_plan_destroy ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
hb_shape_plan_destroy (<em class="parameter"><code><a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-t"><span class="type">hb_shape_plan_t</span></a> *shape_plan</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp16259760"></a><h4>Parameters</h4>
+<a name="hb-shape-plan-destroy.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -213,7 +235,7 @@ hb_shape_plan_destroy (<em class="parameter"><code><a class="link" href="harfbuz
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -221,11 +243,11 @@ hb_shape_plan_destroy (<em class="parameter"><code><a class="link" href="harfbuz
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
hb_shape_plan_execute (<em class="parameter"><code><a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-t"><span class="type">hb_shape_plan_t</span></a> *shape_plan</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code>const <a class="link" href="harfbuzz-hb-shape.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *features</code></em>,
+ <em class="parameter"><code><a class="link" href="harfbuzz-Buffers.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
+ <em class="parameter"><code>const <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *features</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> num_features</code></em>);</pre>
<div class="refsect3">
-<a name="idp24238496"></a><h4>Parameters</h4>
+<a name="hb-shape-plan-execute.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -256,11 +278,7 @@ hb_shape_plan_execute (<em class="parameter"><code><a class="link" href="harfbuz
</tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp23522512"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -268,11 +286,11 @@ hb_shape_plan_execute (<em class="parameter"><code><a class="link" href="harfbuz
<pre class="programlisting"><a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-t"><span class="returnvalue">hb_shape_plan_t</span></a> *
hb_shape_plan_get_empty (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<div class="refsect3">
-<a name="idp23531024"></a><h4>Returns</h4>
+<a name="hb-shape-plan-get-empty.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -280,7 +298,7 @@ hb_shape_plan_get_empty (<em class="parameter"><code><span class="type">void</sp
<pre class="programlisting">const <span class="returnvalue">char</span> *
hb_shape_plan_get_shaper (<em class="parameter"><code><a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-t"><span class="type">hb_shape_plan_t</span></a> *shape_plan</code></em>);</pre>
<div class="refsect3">
-<a name="idp23541920"></a><h4>Parameters</h4>
+<a name="hb-shape-plan-get-shaper.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -295,11 +313,11 @@ hb_shape_plan_get_shaper (<em class="parameter"><code><a class="link" href="harf
</table></div>
</div>
<div class="refsect3">
-<a name="idp23550320"></a><h4>Returns</h4>
+<a name="hb-shape-plan-get-shaper.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -307,8 +325,9 @@ hb_shape_plan_get_shaper (<em class="parameter"><code><a class="link" href="harf
<pre class="programlisting"><span class="returnvalue">void</span> *
hb_shape_plan_get_user_data (<em class="parameter"><code><a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-t"><span class="type">hb_shape_plan_t</span></a> *shape_plan</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-user-data-key-t"><span class="type">hb_user_data_key_t</span></a> *key</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp23562672"></a><h4>Parameters</h4>
+<a name="hb-shape-plan-get-user-data.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -323,19 +342,20 @@ hb_shape_plan_get_user_data (<em class="parameter"><code><a class="link" href="h
</table></div>
</div>
<div class="refsect3">
-<a name="idp23571072"></a><h4>Returns</h4>
+<a name="hb-shape-plan-get-user-data.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-shape-plan-reference"></a><h3>hb_shape_plan_reference ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-t"><span class="returnvalue">hb_shape_plan_t</span></a> *
hb_shape_plan_reference (<em class="parameter"><code><a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-t"><span class="type">hb_shape_plan_t</span></a> *shape_plan</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp23581792"></a><h4>Parameters</h4>
+<a name="hb-shape-plan-reference.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -350,11 +370,11 @@ hb_shape_plan_reference (<em class="parameter"><code><a class="link" href="harfb
</table></div>
</div>
<div class="refsect3">
-<a name="idp23590192"></a><h4>Returns</h4>
+<a name="hb-shape-plan-reference.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
<hr>
<div class="refsect2">
@@ -365,8 +385,9 @@ hb_shape_plan_set_user_data (<em class="parameter"><code><a class="link" href="h
<em class="parameter"><code><span class="type">void</span> *data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="type">hb_bool_t</span></a> replace</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp23607440"></a><h4>Parameters</h4>
+<a name="hb-shape-plan-set-user-data.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -380,11 +401,7 @@ hb_shape_plan_set_user_data (<em class="parameter"><code><a class="link" href="h
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp23615840"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-7.html#api-index-0.9.7">0.9.7</a></p>
</div>
</div>
<div class="refsect1">
@@ -393,13 +410,10 @@ hb_shape_plan_set_user_data (<em class="parameter"><code><a class="link" href="h
<a name="hb-shape-plan-t"></a><h3>hb_shape_plan_t</h3>
<pre class="programlisting">typedef struct hb_shape_plan_t hb_shape_plan_t;
</pre>
-<p>
-</p>
</div>
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-unicode.html b/docs/html/harfbuzz-hb-unicode.html
index 91358b2..ecc82c5 100644
--- a/docs/reference/html/harfbuzz-hb-unicode.html
+++ b/docs/html/harfbuzz-hb-unicode.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-unicode</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
+<title>hb-unicode: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
<link rel="prev" href="harfbuzz-hb-common.html" title="hb-common">
-<link rel="next" href="harfbuzz-hb-buffer.html" title="hb-buffer">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<link rel="next" href="harfbuzz-Buffers.html" title="Buffers">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -19,9 +19,9 @@
<a href="#harfbuzz-hb-unicode.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb-common.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="harfbuzz-hb-buffer.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<td><a accesskey="n" href="harfbuzz-Buffers.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="harfbuzz-hb-unicode"></a><div class="titlepage"></div>
@@ -41,10 +41,6 @@
</colgroup>
<tbody>
<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-unicode.html#HB-UNICODE-MAX-DECOMPOSITION-LEN:CAPS" title="HB_UNICODE_MAX_DECOMPOSITION_LEN">HB_UNICODE_MAX_DECOMPOSITION_LEN</a></td>
-</tr>
-<tr>
<td class="function_type">
<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-combining-class-t" title="enum hb_unicode_combining_class_t"><span class="returnvalue">hb_unicode_combining_class_t</span></a>
</td>
@@ -310,6 +306,10 @@
</colgroup>
<tbody>
<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="harfbuzz-hb-unicode.html#HB-UNICODE-MAX-DECOMPOSITION-LEN:CAPS" title="HB_UNICODE_MAX_DECOMPOSITION_LEN">HB_UNICODE_MAX_DECOMPOSITION_LEN</a></td>
+</tr>
+<tr>
<td class="datatype_keyword">enum</td>
<td class="function_name"><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-combining-class-t" title="enum hb_unicode_combining_class_t">hb_unicode_combining_class_t</a></td>
</tr>
@@ -326,39 +326,24 @@
</div>
<div class="refsect1">
<a name="harfbuzz-hb-unicode.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen"> GBoxed
+<pre class="screen"> <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html">GBoxed</a>
<span class="lineart">╰──</span> hb_unicode_funcs_t
- GEnum
+ <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a>
<span class="lineart">├──</span> hb_unicode_combining_class_t
<span class="lineart">╰──</span> hb_unicode_general_category_t
</pre>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-unicode.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-unicode.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
-<a name="HB-UNICODE-MAX-DECOMPOSITION-LEN:CAPS"></a><h3>HB_UNICODE_MAX_DECOMPOSITION_LEN</h3>
-<pre class="programlisting">#define HB_UNICODE_MAX_DECOMPOSITION_LEN (18+1) /* codepoints */
-</pre>
-<p>
-</p>
-</div>
-<hr>
-<div class="refsect2">
<a name="hb-unicode-combining-class"></a><h3>hb_unicode_combining_class ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-combining-class-t" title="enum hb_unicode_combining_class_t"><span class="returnvalue">hb_unicode_combining_class_t</span></a>
hb_unicode_combining_class (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> unicode</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp19583296"></a><h4>Returns</h4>
-<p></p>
-</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -367,12 +352,6 @@ hb_unicode_combining_class (<em class="parameter"><code><a class="link" href="ha
<span class="c_punctuation">(</span>*hb_unicode_combining_class_func_t<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> unicode</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp19596496"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -383,7 +362,7 @@ hb_unicode_compose (<em class="parameter"><code><a class="link" href="harfbuzz-h
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> b</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *ab</code></em>);</pre>
<div class="refsect3">
-<a name="idp19609760"></a><h4>Parameters</h4>
+<a name="hb-unicode-compose.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -404,11 +383,7 @@ hb_unicode_compose (<em class="parameter"><code><a class="link" href="harfbuzz-h
</tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp19621872"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -419,12 +394,6 @@ hb_unicode_compose (<em class="parameter"><code><a class="link" href="harfbuzz-h
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> b</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *ab</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp19639008"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -435,7 +404,7 @@ hb_unicode_decompose (<em class="parameter"><code><a class="link" href="harfbuzz
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *a</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *b</code></em>);</pre>
<div class="refsect3">
-<a name="idp19652352"></a><h4>Parameters</h4>
+<a name="hb-unicode-decompose.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -461,11 +430,7 @@ hb_unicode_decompose (<em class="parameter"><code><a class="link" href="harfbuzz
</tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp19668176"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -475,7 +440,7 @@ hb_unicode_decompose_compatibility (<em class="parameter"><code><a class="link"
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> u</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *decomposed</code></em>);</pre>
<div class="refsect3">
-<a name="idp19680736"></a><h4>Parameters</h4>
+<a name="hb-unicode-decompose-compatibility.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -496,11 +461,7 @@ hb_unicode_decompose_compatibility (<em class="parameter"><code><a class="link"
</tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp19692848"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -511,12 +472,6 @@ hb_unicode_decompose_compatibility (<em class="parameter"><code><a class="link"
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *a</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *b</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp19709984"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -524,32 +479,44 @@ hb_unicode_decompose_compatibility (<em class="parameter"><code><a class="link"
<pre class="programlisting">unsigned <span class="returnvalue">int</span>
hb_unicode_eastasian_width (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> unicode</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp19720224"></a><h4>Returns</h4>
-<p></p>
-</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-unicode-funcs-create"></a><h3>hb_unicode_funcs_create ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="returnvalue">hb_unicode_funcs_t</span></a> *
hb_unicode_funcs_create (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *parent</code></em>);</pre>
-<p>
-</p>
+<p><span class="annotation">[Xconstructor]</span></p>
+<div class="refsect3">
+<a name="hb-unicode-funcs-create.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>parent</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
+</tr></tbody>
+</table></div>
+</div>
<div class="refsect3">
-<a name="idp19728656"></a><h4>Returns</h4>
-<p></p>
+<a name="hb-unicode-funcs-create.returns"></a><h4>Returns</h4>
+<p>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-unicode-funcs-destroy"></a><h3>hb_unicode_funcs_destroy ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
hb_unicode_funcs_destroy (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp19737168"></a><h4>Parameters</h4>
+<a name="hb-unicode-funcs-destroy.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -563,19 +530,13 @@ hb_unicode_funcs_destroy (<em class="parameter"><code><a class="link" href="harf
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-unicode-funcs-get-default"></a><h3>hb_unicode_funcs_get_default ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="returnvalue">hb_unicode_funcs_t</span></a> *
hb_unicode_funcs_get_default (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp19752576"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -583,11 +544,11 @@ hb_unicode_funcs_get_default (<em class="parameter"><code><span class="type">voi
<pre class="programlisting"><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="returnvalue">hb_unicode_funcs_t</span></a> *
hb_unicode_funcs_get_empty (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<div class="refsect3">
-<a name="idp19760480"></a><h4>Returns</h4>
+<a name="hb-unicode-funcs-get-empty.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -595,7 +556,7 @@ hb_unicode_funcs_get_empty (<em class="parameter"><code><span class="type">void<
<pre class="programlisting"><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="returnvalue">hb_unicode_funcs_t</span></a> *
hb_unicode_funcs_get_parent (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>);</pre>
<div class="refsect3">
-<a name="idp19771200"></a><h4>Parameters</h4>
+<a name="hb-unicode-funcs-get-parent.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -609,11 +570,7 @@ hb_unicode_funcs_get_parent (<em class="parameter"><code><a class="link" href="h
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp19779600"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -621,8 +578,9 @@ hb_unicode_funcs_get_parent (<em class="parameter"><code><a class="link" href="h
<pre class="programlisting"><span class="returnvalue">void</span> *
hb_unicode_funcs_get_user_data (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-user-data-key-t"><span class="type">hb_user_data_key_t</span></a> *key</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp19790352"></a><h4>Parameters</h4>
+<a name="hb-unicode-funcs-get-user-data.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -637,11 +595,11 @@ hb_unicode_funcs_get_user_data (<em class="parameter"><code><a class="link" href
</table></div>
</div>
<div class="refsect3">
-<a name="idp19798752"></a><h4>Returns</h4>
+<a name="hb-unicode-funcs-get-user-data.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -649,7 +607,7 @@ hb_unicode_funcs_get_user_data (<em class="parameter"><code><a class="link" href
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
hb_unicode_funcs_is_immutable (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>);</pre>
<div class="refsect3">
-<a name="idp20958624"></a><h4>Parameters</h4>
+<a name="hb-unicode-funcs-is-immutable.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -663,11 +621,7 @@ hb_unicode_funcs_is_immutable (<em class="parameter"><code><a class="link" href=
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp20966128"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -675,7 +629,7 @@ hb_unicode_funcs_is_immutable (<em class="parameter"><code><a class="link" href=
<pre class="programlisting"><span class="returnvalue">void</span>
hb_unicode_funcs_make_immutable (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>);</pre>
<div class="refsect3">
-<a name="idp20973920"></a><h4>Parameters</h4>
+<a name="hb-unicode-funcs-make-immutable.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -689,15 +643,16 @@ hb_unicode_funcs_make_immutable (<em class="parameter"><code><a class="link" hre
</tr></tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-unicode-funcs-reference"></a><h3>hb_unicode_funcs_reference ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="returnvalue">hb_unicode_funcs_t</span></a> *
hb_unicode_funcs_reference (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp20987952"></a><h4>Parameters</h4>
+<a name="hb-unicode-funcs-reference.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -712,11 +667,11 @@ hb_unicode_funcs_reference (<em class="parameter"><code><a class="link" href="ha
</table></div>
</div>
<div class="refsect3">
-<a name="idp20995456"></a><h4>Returns</h4>
+<a name="hb-unicode-funcs-reference.returns"></a><h4>Returns</h4>
<p>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -728,21 +683,28 @@ hb_unicode_funcs_set_combining_class_func
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp21008784"></a><h4>Parameters</h4>
+<a name="hb-unicode-funcs-set-combining-class-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
-<tbody><tr>
+<tbody>
+<tr>
<td class="parameter_name"><p>ufuncs</p></td>
<td class="parameter_description"><p>a Unicode function structure</p></td>
<td class="parameter_annotations"> </td>
-</tr></tbody>
+</tr>
+<tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
+</tr>
+</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -753,21 +715,28 @@ hb_unicode_funcs_set_compose_func (<em class="parameter"><code><a class="link" h
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp21026832"></a><h4>Parameters</h4>
+<a name="hb-unicode-funcs-set-compose-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
-<tbody><tr>
+<tbody>
+<tr>
<td class="parameter_name"><p>ufuncs</p></td>
<td class="parameter_description"><p>a Unicode function structure</p></td>
<td class="parameter_annotations"> </td>
-</tr></tbody>
+</tr>
+<tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
+</tr>
+</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -779,21 +748,28 @@ hb_unicode_funcs_set_decompose_compatibility_func
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp21044992"></a><h4>Parameters</h4>
+<a name="hb-unicode-funcs-set-decompose-compatibility-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
-<tbody><tr>
+<tbody>
+<tr>
<td class="parameter_name"><p>ufuncs</p></td>
<td class="parameter_description"><p>a Unicode function structure</p></td>
<td class="parameter_annotations"> </td>
-</tr></tbody>
+</tr>
+<tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
+</tr>
+</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -804,21 +780,28 @@ hb_unicode_funcs_set_decompose_func (<em class="parameter"><code><a class="link"
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp21063152"></a><h4>Parameters</h4>
+<a name="hb-unicode-funcs-set-decompose-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
-<tbody><tr>
+<tbody>
+<tr>
<td class="parameter_name"><p>ufuncs</p></td>
<td class="parameter_description"><p>a Unicode function structure</p></td>
<td class="parameter_annotations"> </td>
-</tr></tbody>
+</tr>
+<tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
+</tr>
+</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -830,21 +813,28 @@ hb_unicode_funcs_set_eastasian_width_func
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp21081312"></a><h4>Parameters</h4>
+<a name="hb-unicode-funcs-set-eastasian-width-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
-<tbody><tr>
+<tbody>
+<tr>
<td class="parameter_name"><p>ufuncs</p></td>
<td class="parameter_description"><p>a Unicode function structure</p></td>
<td class="parameter_annotations"> </td>
-</tr></tbody>
+</tr>
+<tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
+</tr>
+</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -856,21 +846,28 @@ hb_unicode_funcs_set_general_category_func
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp21099472"></a><h4>Parameters</h4>
+<a name="hb-unicode-funcs-set-general-category-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
-<tbody><tr>
+<tbody>
+<tr>
<td class="parameter_name"><p>ufuncs</p></td>
<td class="parameter_description"><p>a Unicode function structure</p></td>
<td class="parameter_annotations"> </td>
-</tr></tbody>
+</tr>
+<tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
+</tr>
+</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -881,21 +878,28 @@ hb_unicode_funcs_set_mirroring_func (<em class="parameter"><code><a class="link"
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp21117632"></a><h4>Parameters</h4>
+<a name="hb-unicode-funcs-set-mirroring-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
-<tbody><tr>
+<tbody>
+<tr>
<td class="parameter_name"><p>ufuncs</p></td>
<td class="parameter_description"><p>a Unicode function structure</p></td>
<td class="parameter_annotations"> </td>
-</tr></tbody>
+</tr>
+<tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
+</tr>
+</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -906,21 +910,28 @@ hb_unicode_funcs_set_script_func (<em class="parameter"><code><a class="link" hr
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="refsect3">
-<a name="idp21135792"></a><h4>Parameters</h4>
+<a name="hb-unicode-funcs-set-script-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
-<tbody><tr>
+<tbody>
+<tr>
<td class="parameter_name"><p>ufuncs</p></td>
<td class="parameter_description"><p>a Unicode function structure</p></td>
<td class="parameter_annotations"> </td>
-</tr></tbody>
+</tr>
+<tr>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
+</tr>
+</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -931,8 +942,9 @@ hb_unicode_funcs_set_user_data (<em class="parameter"><code><a class="link" href
<em class="parameter"><code><span class="type">void</span> *data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="type">hb_bool_t</span></a> replace</code></em>);</pre>
+<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
-<a name="idp21155328"></a><h4>Parameters</h4>
+<a name="hb-unicode-funcs-set-user-data.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -946,11 +958,7 @@ hb_unicode_funcs_set_user_data (<em class="parameter"><code><a class="link" href
</tr></tbody>
</table></div>
</div>
-<div class="refsect3">
-<a name="idp21162832"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -958,12 +966,7 @@ hb_unicode_funcs_set_user_data (<em class="parameter"><code><a class="link" href
<pre class="programlisting"><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-general-category-t" title="enum hb_unicode_general_category_t"><span class="returnvalue">hb_unicode_general_category_t</span></a>
hb_unicode_general_category (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> unicode</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp21171920"></a><h4>Returns</h4>
-<p></p>
-</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -972,12 +975,6 @@ hb_unicode_general_category (<em class="parameter"><code><a class="link" href="h
<span class="c_punctuation">(</span>*hb_unicode_general_category_func_t<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> unicode</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp21183216"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -985,12 +982,7 @@ hb_unicode_general_category (<em class="parameter"><code><a class="link" href="h
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="returnvalue">hb_codepoint_t</span></a>
hb_unicode_mirroring (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> unicode</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp21191760"></a><h4>Returns</h4>
-<p></p>
-</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -999,12 +991,6 @@ hb_unicode_mirroring (<em class="parameter"><code><a class="link" href="harfbuzz
<span class="c_punctuation">(</span>*hb_unicode_mirroring_func_t<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> unicode</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp21203056"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
@@ -1012,12 +998,7 @@ hb_unicode_mirroring (<em class="parameter"><code><a class="link" href="harfbuzz
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="returnvalue">hb_script_t</span></a>
hb_unicode_script (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> unicode</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp21211600"></a><h4>Returns</h4>
-<p></p>
-</div>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
@@ -1026,22 +1007,20 @@ hb_unicode_script (<em class="parameter"><code><a class="link" href="harfbuzz-hb
<span class="c_punctuation">(</span>*hb_unicode_script_func_t<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> unicode</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp21222896"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-unicode.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
+<a name="HB-UNICODE-MAX-DECOMPOSITION-LEN:CAPS"></a><h3>HB_UNICODE_MAX_DECOMPOSITION_LEN</h3>
+<pre class="programlisting">#define HB_UNICODE_MAX_DECOMPOSITION_LEN (18+1) /* codepoints */
+</pre>
+</div>
+<hr>
+<div class="refsect2">
<a name="hb-unicode-combining-class-t"></a><h3>enum hb_unicode_combining_class_t</h3>
-<p>
-</p>
<div class="refsect3">
-<a name="idp21228688"></a><h4>Members</h4>
+<a name="hb-unicode-combining-class-t.members"></a><h4>Members</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="300px" class="enum_members_name">
@@ -1051,288 +1030,288 @@ hb_unicode_script (<em class="parameter"><code><a class="link" href="harfbuzz-hb
<tbody>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-NOT-REORDERED:CAPS"></a>HB_UNICODE_COMBINING_CLASS_NOT_REORDERED</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-OVERLAY:CAPS"></a>HB_UNICODE_COMBINING_CLASS_OVERLAY</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-NUKTA:CAPS"></a>HB_UNICODE_COMBINING_CLASS_NUKTA</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-KANA-VOICING:CAPS"></a>HB_UNICODE_COMBINING_CLASS_KANA_VOICING</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-VIRAMA:CAPS"></a>HB_UNICODE_COMBINING_CLASS_VIRAMA</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC10:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC10</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC11:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC11</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC12:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC12</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC13:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC13</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC14:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC14</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC15:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC15</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC16:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC16</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC17:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC17</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC18:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC18</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC19:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC19</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC20:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC20</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC21:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC21</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC22:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC22</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC23:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC23</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC24:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC24</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC25:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC25</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC26:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC26</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC27:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC27</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC28:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC28</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC29:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC29</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC30:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC30</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC31:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC31</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC32:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC32</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC33:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC33</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC34:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC34</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC35:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC35</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC36:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC36</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC84:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC84</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC91:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC91</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC103:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC103</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC107:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC107</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC118:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC118</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC122:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC122</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC129:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC129</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC130:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC130</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-CCC133:CAPS"></a>HB_UNICODE_COMBINING_CLASS_CCC133</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-ATTACHED-BELOW-LEFT:CAPS"></a>HB_UNICODE_COMBINING_CLASS_ATTACHED_BELOW_LEFT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-ATTACHED-BELOW:CAPS"></a>HB_UNICODE_COMBINING_CLASS_ATTACHED_BELOW</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-ATTACHED-ABOVE:CAPS"></a>HB_UNICODE_COMBINING_CLASS_ATTACHED_ABOVE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-ATTACHED-ABOVE-RIGHT:CAPS"></a>HB_UNICODE_COMBINING_CLASS_ATTACHED_ABOVE_RIGHT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-BELOW-LEFT:CAPS"></a>HB_UNICODE_COMBINING_CLASS_BELOW_LEFT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-BELOW:CAPS"></a>HB_UNICODE_COMBINING_CLASS_BELOW</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-BELOW-RIGHT:CAPS"></a>HB_UNICODE_COMBINING_CLASS_BELOW_RIGHT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-LEFT:CAPS"></a>HB_UNICODE_COMBINING_CLASS_LEFT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-RIGHT:CAPS"></a>HB_UNICODE_COMBINING_CLASS_RIGHT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-ABOVE-LEFT:CAPS"></a>HB_UNICODE_COMBINING_CLASS_ABOVE_LEFT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-ABOVE:CAPS"></a>HB_UNICODE_COMBINING_CLASS_ABOVE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-ABOVE-RIGHT:CAPS"></a>HB_UNICODE_COMBINING_CLASS_ABOVE_RIGHT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-DOUBLE-BELOW:CAPS"></a>HB_UNICODE_COMBINING_CLASS_DOUBLE_BELOW</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-DOUBLE-ABOVE:CAPS"></a>HB_UNICODE_COMBINING_CLASS_DOUBLE_ABOVE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-IOTA-SUBSCRIPT:CAPS"></a>HB_UNICODE_COMBINING_CLASS_IOTA_SUBSCRIPT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-COMBINING-CLASS-INVALID:CAPS"></a>HB_UNICODE_COMBINING_CLASS_INVALID</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
</tbody>
</table></div>
@@ -1343,16 +1322,12 @@ hb_unicode_script (<em class="parameter"><code><a class="link" href="harfbuzz-hb
<a name="hb-unicode-funcs-t"></a><h3>hb_unicode_funcs_t</h3>
<pre class="programlisting">typedef struct hb_unicode_funcs_t hb_unicode_funcs_t;
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="hb-unicode-general-category-t"></a><h3>enum hb_unicode_general_category_t</h3>
-<p>
-</p>
<div class="refsect3">
-<a name="idp21422768"></a><h4>Members</h4>
+<a name="hb-unicode-general-category-t.members"></a><h4>Members</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="300px" class="enum_members_name">
@@ -1362,153 +1337,153 @@ hb_unicode_script (<em class="parameter"><code><a class="link" href="harfbuzz-hb
<tbody>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-CONTROL:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_CONTROL</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-FORMAT:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_FORMAT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-UNASSIGNED:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_UNASSIGNED</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-PRIVATE-USE:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_PRIVATE_USE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-SURROGATE:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_SURROGATE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-LOWERCASE-LETTER:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_LOWERCASE_LETTER</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-MODIFIER-LETTER:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_MODIFIER_LETTER</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-OTHER-LETTER:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_OTHER_LETTER</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-TITLECASE-LETTER:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_TITLECASE_LETTER</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-UPPERCASE-LETTER:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_UPPERCASE_LETTER</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-SPACING-MARK:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_SPACING_MARK</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-ENCLOSING-MARK:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_ENCLOSING_MARK</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-NON-SPACING-MARK:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_NON_SPACING_MARK</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-DECIMAL-NUMBER:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_DECIMAL_NUMBER</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-LETTER-NUMBER:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_LETTER_NUMBER</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-OTHER-NUMBER:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_OTHER_NUMBER</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-CONNECT-PUNCTUATION:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_CONNECT_PUNCTUATION</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-DASH-PUNCTUATION:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_DASH_PUNCTUATION</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-CLOSE-PUNCTUATION:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_CLOSE_PUNCTUATION</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-FINAL-PUNCTUATION:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_FINAL_PUNCTUATION</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-INITIAL-PUNCTUATION:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_INITIAL_PUNCTUATION</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-OTHER-PUNCTUATION:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_OTHER_PUNCTUATION</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-OPEN-PUNCTUATION:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_OPEN_PUNCTUATION</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-CURRENCY-SYMBOL:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_CURRENCY_SYMBOL</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-MODIFIER-SYMBOL:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_MODIFIER_SYMBOL</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-MATH-SYMBOL:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_MATH_SYMBOL</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-OTHER-SYMBOL:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_OTHER_SYMBOL</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-LINE-SEPARATOR:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_LINE_SEPARATOR</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-PARAGRAPH-SEPARATOR:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_PARAGRAPH_SEPARATOR</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="HB-UNICODE-GENERAL-CATEGORY-SPACE-SEPARATOR:CAPS"></a>HB_UNICODE_GENERAL_CATEGORY_SPACE_SEPARATOR</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
+<td> </td>
+<td> </td>
</tr>
</tbody>
</table></div>
@@ -1517,7 +1492,6 @@ hb_unicode_script (<em class="parameter"><code><a class="link" href="harfbuzz-hb
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-uniscribe.html b/docs/html/harfbuzz-hb-uniscribe.html
index 3b9645a..2096fbe 100644
--- a/docs/reference/html/harfbuzz-hb-uniscribe.html
+++ b/docs/html/harfbuzz-hb-uniscribe.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-uniscribe</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
+<title>hb-uniscribe: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
<link rel="prev" href="harfbuzz-hb-graphite2.html" title="hb-graphite2">
<link rel="next" href="harfbuzz-hb-coretext.html" title="hb-coretext">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -18,7 +18,7 @@
<a href="#harfbuzz-hb-uniscribe.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb-graphite2.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-coretext.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
@@ -60,8 +60,6 @@
</div>
<div class="refsect1">
<a name="harfbuzz-hb-uniscribe.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-uniscribe.functions_details"></a><h2>Functions</h2>
@@ -69,24 +67,12 @@
<a name="hb-uniscribe-font-get-hfont"></a><h3>hb_uniscribe_font_get_hfont ()</h3>
<pre class="programlisting"><span class="returnvalue">HFONT</span>
hb_uniscribe_font_get_hfont (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp26513136"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
<hr>
<div class="refsect2">
<a name="hb-uniscribe-font-get-logfontw"></a><h3>hb_uniscribe_font_get_logfontw ()</h3>
<pre class="programlisting"><span class="returnvalue">LOGFONTW</span> *
hb_uniscribe_font_get_logfontw (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp15442704"></a><h4>Returns</h4>
-<p></p>
-</div>
</div>
</div>
<div class="refsect1">
@@ -94,7 +80,6 @@ hb_uniscribe_font_get_logfontw (<em class="parameter"><code><a class="link" href
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-version.html b/docs/html/harfbuzz-hb-version.html
index 3438e91..28a9346 100644
--- a/docs/reference/html/harfbuzz-hb-version.html
+++ b/docs/html/harfbuzz-hb-version.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-version</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
-<link rel="prev" href="harfbuzz-hb-shape.html" title="hb-shape">
+<title>hb-version: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
+<link rel="prev" href="harfbuzz-Shaping.html" title="Shaping">
<link rel="next" href="harfbuzz-hb-deprecated.html" title="hb-deprecated">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -18,8 +18,8 @@
<a href="#harfbuzz-hb-version.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="harfbuzz-hb-shape.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="harfbuzz-Shaping.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-deprecated.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
@@ -40,6 +40,12 @@
</colgroup>
<tbody>
<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-version.html#HB-VERSION-ATLEAST:CAPS" title="HB_VERSION_ATLEAST()">HB_VERSION_ATLEAST</a><span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
@@ -48,6 +54,14 @@
</td>
</tr>
<tr>
+<td class="function_type">
+<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="harfbuzz-hb-version.html#hb-version-atleast" title="hb_version_atleast ()">hb_version_atleast</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
<td class="function_type">const <span class="returnvalue">char</span> *
</td>
<td class="function_name">
@@ -86,19 +100,23 @@
</div>
<div class="refsect1">
<a name="harfbuzz-hb-version.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-version.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
+<a name="HB-VERSION-ATLEAST:CAPS"></a><h3>HB_VERSION_ATLEAST()</h3>
+<pre class="programlisting">#define HB_VERSION_ATLEAST(major,minor,micro)</pre>
+</div>
+<hr>
+<div class="refsect2">
<a name="hb-version"></a><h3>hb_version ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
hb_version (<em class="parameter"><code>unsigned <span class="type">int</span> *major</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *minor</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *micro</code></em>);</pre>
+<p>Returns library version as three integer components.</p>
<div class="refsect3">
-<a name="idp16699792"></a><h4>Parameters</h4>
+<a name="hb-version.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
@@ -124,7 +142,16 @@ hb_version (<em class="parameter"><code>unsigned <span class="type">int</span> *
</tbody>
</table></div>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="hb-version-atleast"></a><h3>hb_version_atleast ()</h3>
+<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
+hb_version_atleast (<em class="parameter"><code>unsigned <span class="type">int</span> major</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> minor</code></em>,
+ <em class="parameter"><code>unsigned <span class="type">int</span> micro</code></em>);</pre>
+<p class="since">Since: <a class="link" href="api-index-0-9-30.html#api-index-0.9.30">0.9.30</a></p>
</div>
<hr>
<div class="refsect2">
@@ -133,50 +160,40 @@ hb_version (<em class="parameter"><code>unsigned <span class="type">int</span> *
hb_version_string (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns library version as a string with three components.</p>
<div class="refsect3">
-<a name="idp14950384"></a><h4>Returns</h4>
+<a name="hb-version-string.returns"></a><h4>Returns</h4>
<p> library version string.</p>
-<p></p>
</div>
-<p class="since">Since 1.0</p>
+<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-version.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="HB-VERSION-MAJOR:CAPS"></a><h3>HB_VERSION_MAJOR</h3>
-<pre class="programlisting">#define HB_VERSION_MAJOR 0
+<pre class="programlisting">#define HB_VERSION_MAJOR 1
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-VERSION-MICRO:CAPS"></a><h3>HB_VERSION_MICRO</h3>
-<pre class="programlisting">#define HB_VERSION_MICRO 40
+<pre class="programlisting">#define HB_VERSION_MICRO 6
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-VERSION-MINOR:CAPS"></a><h3>HB_VERSION_MINOR</h3>
-<pre class="programlisting">#define HB_VERSION_MINOR 9
+<pre class="programlisting">#define HB_VERSION_MINOR 2
</pre>
-<p>
-</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-VERSION-STRING:CAPS"></a><h3>HB_VERSION_STRING</h3>
-<pre class="programlisting">#define HB_VERSION_STRING "0.9.40"
+<pre class="programlisting">#define HB_VERSION_STRING "1.2.6"
</pre>
-<p>
-</p>
</div>
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb.html b/docs/html/harfbuzz-hb.html
index 0ce86d6..ca615fe 100644
--- a/docs/reference/html/harfbuzz-hb.html
+++ b/docs/html/harfbuzz-hb.html
@@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
-<link rel="prev" href="ch01.html" title="[Insert title here]">
+<title>hb: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="ch07.html" title="Harfbuzz API">
+<link rel="prev" href="ch07.html" title="Harfbuzz API">
<link rel="next" href="harfbuzz-hb-common.html" title="hb-common">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -18,8 +18,8 @@
<a href="#harfbuzz-hb.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="ch01.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="ch07.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-common.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
@@ -33,18 +33,16 @@
</tr></table></div>
<div class="refsect1">
<a name="harfbuzz-hb.description"></a><h2>Description</h2>
-<p>
-</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb.functions_details"></a><h2>Functions</h2>
+<p></p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb.other_details"></a><h2>Types and Values</h2>
</div>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/html/harfbuzz.devhelp2 b/docs/html/harfbuzz.devhelp2
new file mode 100644
index 0000000..15ffc29
--- /dev/null
+++ b/docs/html/harfbuzz.devhelp2
@@ -0,0 +1,771 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<book xmlns="http://www.devhelp.net/book" title="HarfBuzz Manual" link="index.html" author="" name="harfbuzz" version="2" language="c">
+ <chapters>
+ <sub name="User's manual" link="pt01.html">
+ <sub name="What is Harfbuzz?" link="what-is-harfbuzz.html">
+ <sub name="Why do I need it?" link="what-is-harfbuzz.html#why-do-i-need-it"/>
+ <sub name="Why is it called Harfbuzz?" link="why-is-it-called-harfbuzz.html"/>
+ </sub>
+ <sub name="Install Harfbuzz" link="install-harfbuzz.html">
+ <sub name="Download" link="install-harfbuzz.html#download"/>
+ <sub name="Building" link="building.html"/>
+ </sub>
+ <sub name="Hello, Harfbuzz" link="hello-harfbuzz.html">
+ <sub name="What Harfbuzz doesn't do" link="hello-harfbuzz.html#what-harfbuzz-doesnt-do"/>
+ </sub>
+ <sub name="Buffers, language, script and direction" link="buffers-language-script-and-direction.html">
+ <sub name="Creating and destroying buffers" link="buffers-language-script-and-direction.html#creating-and-destroying-buffers"/>
+ <sub name="Adding text to the buffer" link="adding-text-to-the-buffer.html"/>
+ <sub name="Setting buffer properties" link="setting-buffer-properties.html"/>
+ <sub name="What about the other scripts?" link="what-about-the-other-scripts.html"/>
+ <sub name="Customizing Unicode functions" link="customizing-unicode-functions.html"/>
+ </sub>
+ <sub name="Fonts and faces" link="fonts-and-faces.html">
+ <sub name="Using FreeType" link="fonts-and-faces.html#using-freetype"/>
+ <sub name="Using Harfbuzz's native OpenType implementation" link="using-harfbuzzs-native-opentype-implementation.html"/>
+ <sub name="Using your own font functions" link="using-your-own-font-functions.html"/>
+ </sub>
+ <sub name="Shaping and shape plans" link="shaping-and-shape-plans.html">
+ <sub name="OpenType features" link="shaping-and-shape-plans.html#opentype-features"/>
+ <sub name="Plans and caching" link="plans-and-caching.html"/>
+ </sub>
+ <sub name="Glyph information" link="pt01.html#glyph-information"/>
+ </sub>
+ <sub name="Reference manual" link="pt02.html">
+ <sub name="Harfbuzz API" link="ch07.html">
+ <sub name="hb" link="harfbuzz-hb.html"/>
+ <sub name="hb-common" link="harfbuzz-hb-common.html"/>
+ <sub name="hb-unicode" link="harfbuzz-hb-unicode.html"/>
+ <sub name="Buffers" link="harfbuzz-Buffers.html"/>
+ <sub name="hb-blob" link="harfbuzz-hb-blob.html"/>
+ <sub name="hb-face" link="harfbuzz-hb-face.html"/>
+ <sub name="hb-font" link="harfbuzz-hb-font.html"/>
+ <sub name="Shaping" link="harfbuzz-Shaping.html"/>
+ <sub name="hb-version" link="harfbuzz-hb-version.html"/>
+ <sub name="hb-deprecated" link="harfbuzz-hb-deprecated.html"/>
+ <sub name="hb-set" link="harfbuzz-hb-set.html"/>
+ <sub name="hb-ot" link="harfbuzz-hb-ot.html"/>
+ <sub name="hb-ot-layout" link="harfbuzz-hb-ot-layout.html"/>
+ <sub name="hb-ot-tag" link="harfbuzz-hb-ot-tag.html"/>
+ <sub name="hb-ot-font" link="harfbuzz-hb-ot-font.html"/>
+ <sub name="hb-ot-shape" link="harfbuzz-hb-ot-shape.html"/>
+ <sub name="hb-shape-plan" link="harfbuzz-hb-shape-plan.html"/>
+ <sub name="hb-glib" link="harfbuzz-hb-glib.html"/>
+ <sub name="hb-icu" link="harfbuzz-hb-icu.html"/>
+ <sub name="hb-ft" link="harfbuzz-hb-ft.html"/>
+ <sub name="hb-graphite2" link="harfbuzz-hb-graphite2.html"/>
+ <sub name="hb-uniscribe" link="harfbuzz-hb-uniscribe.html"/>
+ <sub name="hb-coretext" link="harfbuzz-hb-coretext.html"/>
+ <sub name="hb-gobject" link="harfbuzz-hb-gobject.html"/>
+ </sub>
+ <sub name="Object Hierarchy" link="object-tree.html"/>
+ <sub name="API Index" link="api-index-full.html"/>
+ <sub name="Index of new symbols in 0.9.2" link="api-index-0-9-2.html"/>
+ <sub name="Index of new symbols in 0.9.5" link="api-index-0-9-5.html"/>
+ <sub name="Index of new symbols in 0.9.7" link="api-index-0-9-7.html"/>
+ <sub name="Index of new symbols in 0.9.8" link="api-index-0-9-8.html"/>
+ <sub name="Index of new symbols in 0.9.10" link="api-index-0-9-10.html"/>
+ <sub name="Index of new symbols in 0.9.11" link="api-index-0-9-11.html"/>
+ <sub name="Index of new symbols in 0.9.20" link="api-index-0-9-20.html"/>
+ <sub name="Index of new symbols in 0.9.22" link="api-index-0-9-22.html"/>
+ <sub name="Index of new symbols in 0.9.28" link="api-index-0-9-28.html"/>
+ <sub name="Index of new symbols in 0.9.30" link="api-index-0-9-30.html"/>
+ <sub name="Index of new symbols in 0.9.31" link="api-index-0-9-31.html"/>
+ <sub name="Index of new symbols in 0.9.38" link="api-index-0-9-38.html"/>
+ <sub name="Index of new symbols in 0.9.39" link="api-index-0-9-39.html"/>
+ <sub name="Index of new symbols in 0.9.41" link="api-index-0-9-41.html"/>
+ <sub name="Index of new symbols in 0.9.42" link="api-index-0-9-42.html"/>
+ <sub name="Index of new symbols in 1.0.5" link="api-index-1-0-5.html"/>
+ <sub name="Index of new symbols in 1.1.2" link="api-index-1-1-2.html"/>
+ <sub name="Index of new symbols in 1.1.3" link="api-index-1-1-3.html"/>
+ <sub name="Index of deprecated API" link="deprecated-api-index.html"/>
+ <sub name="Annotation Glossary" link="annotation-glossary.html"/>
+ </sub>
+ </chapters>
+ <functions>
+ <keyword type="function" name="hb_tag_from_string ()" link="harfbuzz-hb-common.html#hb-tag-from-string" since="0.9.2"/>
+ <keyword type="function" name="hb_tag_to_string ()" link="harfbuzz-hb-common.html#hb-tag-to-string" since="0.9.5"/>
+ <keyword type="function" name="hb_direction_from_string ()" link="harfbuzz-hb-common.html#hb-direction-from-string" since="0.9.2"/>
+ <keyword type="function" name="hb_direction_to_string ()" link="harfbuzz-hb-common.html#hb-direction-to-string" since="0.9.2"/>
+ <keyword type="function" name="hb_script_from_iso15924_tag ()" link="harfbuzz-hb-common.html#hb-script-from-iso15924-tag" since="0.9.2"/>
+ <keyword type="function" name="hb_script_from_string ()" link="harfbuzz-hb-common.html#hb-script-from-string" since="0.9.2"/>
+ <keyword type="function" name="hb_script_to_iso15924_tag ()" link="harfbuzz-hb-common.html#hb-script-to-iso15924-tag" since="0.9.2"/>
+ <keyword type="function" name="hb_script_get_horizontal_direction ()" link="harfbuzz-hb-common.html#hb-script-get-horizontal-direction" since="0.9.2"/>
+ <keyword type="function" name="hb_language_from_string ()" link="harfbuzz-hb-common.html#hb-language-from-string" since="0.9.2"/>
+ <keyword type="function" name="hb_language_to_string ()" link="harfbuzz-hb-common.html#hb-language-to-string" since="0.9.2"/>
+ <keyword type="function" name="hb_language_get_default ()" link="harfbuzz-hb-common.html#hb-language-get-default" since="0.9.2"/>
+ <keyword type="function" name="hb_destroy_func_t ()" link="harfbuzz-hb-common.html#hb-destroy-func-t"/>
+ <keyword type="macro" name="HB_TAG()" link="harfbuzz-hb-common.html#HB-TAG:CAPS"/>
+ <keyword type="macro" name="HB_UNTAG()" link="harfbuzz-hb-common.html#HB-UNTAG:CAPS"/>
+ <keyword type="macro" name="HB_DIRECTION_REVERSE()" link="harfbuzz-hb-common.html#HB-DIRECTION-REVERSE:CAPS"/>
+ <keyword type="macro" name="HB_DIRECTION_IS_BACKWARD()" link="harfbuzz-hb-common.html#HB-DIRECTION-IS-BACKWARD:CAPS"/>
+ <keyword type="macro" name="HB_DIRECTION_IS_FORWARD()" link="harfbuzz-hb-common.html#HB-DIRECTION-IS-FORWARD:CAPS"/>
+ <keyword type="macro" name="HB_DIRECTION_IS_HORIZONTAL()" link="harfbuzz-hb-common.html#HB-DIRECTION-IS-HORIZONTAL:CAPS"/>
+ <keyword type="macro" name="HB_DIRECTION_IS_VALID()" link="harfbuzz-hb-common.html#HB-DIRECTION-IS-VALID:CAPS"/>
+ <keyword type="macro" name="HB_DIRECTION_IS_VERTICAL()" link="harfbuzz-hb-common.html#HB-DIRECTION-IS-VERTICAL:CAPS"/>
+ <keyword type="typedef" name="hb_bool_t" link="harfbuzz-hb-common.html#hb-bool-t"/>
+ <keyword type="typedef" name="hb_codepoint_t" link="harfbuzz-hb-common.html#hb-codepoint-t"/>
+ <keyword type="enum" name="enum hb_direction_t" link="harfbuzz-hb-common.html#hb-direction-t"/>
+ <keyword type="typedef" name="hb_language_t" link="harfbuzz-hb-common.html#hb-language-t"/>
+ <keyword type="typedef" name="hb_mask_t" link="harfbuzz-hb-common.html#hb-mask-t"/>
+ <keyword type="typedef" name="hb_position_t" link="harfbuzz-hb-common.html#hb-position-t"/>
+ <keyword type="typedef" name="hb_tag_t" link="harfbuzz-hb-common.html#hb-tag-t"/>
+ <keyword type="enum" name="enum hb_script_t" link="harfbuzz-hb-common.html#hb-script-t"/>
+ <keyword type="struct" name="hb_user_data_key_t" link="harfbuzz-hb-common.html#hb-user-data-key-t-struct"/>
+ <keyword type="union" name="hb_var_int_t" link="harfbuzz-hb-common.html#hb-var-int-t"/>
+ <keyword type="macro" name="HB_TAG_NONE" link="harfbuzz-hb-common.html#HB-TAG-NONE:CAPS"/>
+ <keyword type="macro" name="HB_TAG_MAX" link="harfbuzz-hb-common.html#HB-TAG-MAX:CAPS"/>
+ <keyword type="macro" name="HB_TAG_MAX_SIGNED" link="harfbuzz-hb-common.html#HB-TAG-MAX-SIGNED:CAPS"/>
+ <keyword type="macro" name="HB_LANGUAGE_INVALID" link="harfbuzz-hb-common.html#HB-LANGUAGE-INVALID:CAPS"/>
+ <keyword type="function" name="hb_unicode_combining_class ()" link="harfbuzz-hb-unicode.html#hb-unicode-combining-class" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_combining_class_func_t ()" link="harfbuzz-hb-unicode.html#hb-unicode-combining-class-func-t"/>
+ <keyword type="function" name="hb_unicode_compose ()" link="harfbuzz-hb-unicode.html#hb-unicode-compose" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_compose_func_t ()" link="harfbuzz-hb-unicode.html#hb-unicode-compose-func-t"/>
+ <keyword type="function" name="hb_unicode_decompose ()" link="harfbuzz-hb-unicode.html#hb-unicode-decompose" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_decompose_compatibility ()" link="harfbuzz-hb-unicode.html#hb-unicode-decompose-compatibility" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_decompose_func_t ()" link="harfbuzz-hb-unicode.html#hb-unicode-decompose-func-t"/>
+ <keyword type="function" name="hb_unicode_eastasian_width ()" link="harfbuzz-hb-unicode.html#hb-unicode-eastasian-width" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_create ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-create" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_destroy ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-destroy" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_get_default ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-get-default"/>
+ <keyword type="function" name="hb_unicode_funcs_get_empty ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-get-empty" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_get_parent ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-get-parent" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_get_user_data ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-get-user-data" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_is_immutable ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-is-immutable" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_make_immutable ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-make-immutable" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_reference ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-reference" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_set_combining_class_func ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-combining-class-func" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_set_compose_func ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-compose-func" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_set_decompose_compatibility_func ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-decompose-compatibility-func" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_set_decompose_func ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-decompose-func" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_set_eastasian_width_func ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-eastasian-width-func" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_set_general_category_func ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-general-category-func" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_set_mirroring_func ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-mirroring-func" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_set_script_func ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-script-func" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_funcs_set_user_data ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-user-data" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_general_category ()" link="harfbuzz-hb-unicode.html#hb-unicode-general-category" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_general_category_func_t ()" link="harfbuzz-hb-unicode.html#hb-unicode-general-category-func-t"/>
+ <keyword type="function" name="hb_unicode_mirroring ()" link="harfbuzz-hb-unicode.html#hb-unicode-mirroring" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_mirroring_func_t ()" link="harfbuzz-hb-unicode.html#hb-unicode-mirroring-func-t"/>
+ <keyword type="function" name="hb_unicode_script ()" link="harfbuzz-hb-unicode.html#hb-unicode-script" since="0.9.2"/>
+ <keyword type="function" name="hb_unicode_script_func_t ()" link="harfbuzz-hb-unicode.html#hb-unicode-script-func-t"/>
+ <keyword type="macro" name="HB_UNICODE_MAX_DECOMPOSITION_LEN" link="harfbuzz-hb-unicode.html#HB-UNICODE-MAX-DECOMPOSITION-LEN:CAPS"/>
+ <keyword type="enum" name="enum hb_unicode_combining_class_t" link="harfbuzz-hb-unicode.html#hb-unicode-combining-class-t"/>
+ <keyword type="typedef" name="hb_unicode_funcs_t" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"/>
+ <keyword type="enum" name="enum hb_unicode_general_category_t" link="harfbuzz-hb-unicode.html#hb-unicode-general-category-t"/>
+ <keyword type="function" name="hb_buffer_create ()" link="harfbuzz-Buffers.html#hb-buffer-create" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_reference ()" link="harfbuzz-Buffers.html#hb-buffer-reference" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_get_empty ()" link="harfbuzz-Buffers.html#hb-buffer-get-empty" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_destroy ()" link="harfbuzz-Buffers.html#hb-buffer-destroy" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_reset ()" link="harfbuzz-Buffers.html#hb-buffer-reset" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_clear_contents ()" link="harfbuzz-Buffers.html#hb-buffer-clear-contents" since="0.9.11"/>
+ <keyword type="function" name="hb_buffer_pre_allocate ()" link="harfbuzz-Buffers.html#hb-buffer-pre-allocate" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_allocation_successful ()" link="harfbuzz-Buffers.html#hb-buffer-allocation-successful" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_add ()" link="harfbuzz-Buffers.html#hb-buffer-add" since="0.9.7"/>
+ <keyword type="function" name="hb_buffer_add_codepoints ()" link="harfbuzz-Buffers.html#hb-buffer-add-codepoints" since="0.9.31"/>
+ <keyword type="function" name="hb_buffer_add_utf32 ()" link="harfbuzz-Buffers.html#hb-buffer-add-utf32" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_add_utf16 ()" link="harfbuzz-Buffers.html#hb-buffer-add-utf16" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_add_utf8 ()" link="harfbuzz-Buffers.html#hb-buffer-add-utf8" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_add_latin1 ()" link="harfbuzz-Buffers.html#hb-buffer-add-latin1" since="0.9.39"/>
+ <keyword type="function" name="hb_buffer_set_content_type ()" link="harfbuzz-Buffers.html#hb-buffer-set-content-type" since="0.9.5"/>
+ <keyword type="function" name="hb_buffer_get_content_type ()" link="harfbuzz-Buffers.html#hb-buffer-get-content-type" since="0.9.5"/>
+ <keyword type="function" name="hb_buffer_set_direction ()" link="harfbuzz-Buffers.html#hb-buffer-set-direction" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_get_direction ()" link="harfbuzz-Buffers.html#hb-buffer-get-direction" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_set_script ()" link="harfbuzz-Buffers.html#hb-buffer-set-script" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_get_script ()" link="harfbuzz-Buffers.html#hb-buffer-get-script" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_set_language ()" link="harfbuzz-Buffers.html#hb-buffer-set-language" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_get_language ()" link="harfbuzz-Buffers.html#hb-buffer-get-language" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_set_flags ()" link="harfbuzz-Buffers.html#hb-buffer-set-flags" since="0.9.7"/>
+ <keyword type="function" name="hb_buffer_get_flags ()" link="harfbuzz-Buffers.html#hb-buffer-get-flags" since="0.9.7"/>
+ <keyword type="function" name="hb_buffer_set_cluster_level ()" link="harfbuzz-Buffers.html#hb-buffer-set-cluster-level" since="0.9.42"/>
+ <keyword type="function" name="hb_buffer_get_cluster_level ()" link="harfbuzz-Buffers.html#hb-buffer-get-cluster-level" since="0.9.42"/>
+ <keyword type="function" name="hb_buffer_set_length ()" link="harfbuzz-Buffers.html#hb-buffer-set-length" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_get_length ()" link="harfbuzz-Buffers.html#hb-buffer-get-length" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_set_segment_properties ()" link="harfbuzz-Buffers.html#hb-buffer-set-segment-properties" since="0.9.7"/>
+ <keyword type="function" name="hb_buffer_get_segment_properties ()" link="harfbuzz-Buffers.html#hb-buffer-get-segment-properties" since="0.9.7"/>
+ <keyword type="function" name="hb_buffer_guess_segment_properties ()" link="harfbuzz-Buffers.html#hb-buffer-guess-segment-properties" since="0.9.7"/>
+ <keyword type="function" name="hb_buffer_set_unicode_funcs ()" link="harfbuzz-Buffers.html#hb-buffer-set-unicode-funcs" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_get_unicode_funcs ()" link="harfbuzz-Buffers.html#hb-buffer-get-unicode-funcs" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_set_user_data ()" link="harfbuzz-Buffers.html#hb-buffer-set-user-data" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_get_user_data ()" link="harfbuzz-Buffers.html#hb-buffer-get-user-data" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_get_glyph_infos ()" link="harfbuzz-Buffers.html#hb-buffer-get-glyph-infos" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_get_glyph_positions ()" link="harfbuzz-Buffers.html#hb-buffer-get-glyph-positions" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_set_replacement_codepoint ()" link="harfbuzz-Buffers.html#hb-buffer-set-replacement-codepoint" since="0.9.31"/>
+ <keyword type="function" name="hb_buffer_get_replacement_codepoint ()" link="harfbuzz-Buffers.html#hb-buffer-get-replacement-codepoint" since="0.9.31"/>
+ <keyword type="function" name="hb_buffer_normalize_glyphs ()" link="harfbuzz-Buffers.html#hb-buffer-normalize-glyphs" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_reverse ()" link="harfbuzz-Buffers.html#hb-buffer-reverse" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_reverse_range ()" link="harfbuzz-Buffers.html#hb-buffer-reverse-range" since="0.9.41"/>
+ <keyword type="function" name="hb_buffer_reverse_clusters ()" link="harfbuzz-Buffers.html#hb-buffer-reverse-clusters" since="0.9.2"/>
+ <keyword type="function" name="hb_buffer_serialize_glyphs ()" link="harfbuzz-Buffers.html#hb-buffer-serialize-glyphs" since="0.9.7"/>
+ <keyword type="function" name="hb_buffer_deserialize_glyphs ()" link="harfbuzz-Buffers.html#hb-buffer-deserialize-glyphs" since="0.9.7"/>
+ <keyword type="function" name="hb_buffer_serialize_format_from_string ()" link="harfbuzz-Buffers.html#hb-buffer-serialize-format-from-string" since="0.9.7"/>
+ <keyword type="function" name="hb_buffer_serialize_format_to_string ()" link="harfbuzz-Buffers.html#hb-buffer-serialize-format-to-string" since="0.9.7"/>
+ <keyword type="function" name="hb_buffer_serialize_list_formats ()" link="harfbuzz-Buffers.html#hb-buffer-serialize-list-formats" since="0.9.7"/>
+ <keyword type="function" name="hb_segment_properties_equal ()" link="harfbuzz-Buffers.html#hb-segment-properties-equal" since="0.9.7"/>
+ <keyword type="function" name="hb_segment_properties_hash ()" link="harfbuzz-Buffers.html#hb-segment-properties-hash" since="0.9.7"/>
+ <keyword type="function" name="hb_buffer_set_message_func ()" link="harfbuzz-Buffers.html#hb-buffer-set-message-func" since="1.1.3"/>
+ <keyword type="function" name="hb_buffer_message_func_t ()" link="harfbuzz-Buffers.html#hb-buffer-message-func-t"/>
+ <keyword type="macro" name="HB_SEGMENT_PROPERTIES_DEFAULT" link="harfbuzz-Buffers.html#HB-SEGMENT-PROPERTIES-DEFAULT:CAPS"/>
+ <keyword type="macro" name="HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT" link="harfbuzz-Buffers.html#HB-BUFFER-REPLACEMENT-CODEPOINT-DEFAULT:CAPS" since="0.9.31"/>
+ <keyword type="typedef" name="hb_buffer_t" link="harfbuzz-Buffers.html#hb-buffer-t"/>
+ <keyword type="struct" name="hb_glyph_info_t" link="harfbuzz-Buffers.html#hb-glyph-info-t-struct"/>
+ <keyword type="struct" name="hb_glyph_position_t" link="harfbuzz-Buffers.html#hb-glyph-position-t-struct"/>
+ <keyword type="enum" name="enum hb_buffer_content_type_t" link="harfbuzz-Buffers.html#hb-buffer-content-type-t"/>
+ <keyword type="enum" name="enum hb_buffer_flags_t" link="harfbuzz-Buffers.html#hb-buffer-flags-t" since="0.9.20"/>
+ <keyword type="enum" name="enum hb_buffer_cluster_level_t" link="harfbuzz-Buffers.html#hb-buffer-cluster-level-t"/>
+ <keyword type="struct" name="hb_segment_properties_t" link="harfbuzz-Buffers.html#hb-segment-properties-t-struct"/>
+ <keyword type="enum" name="enum hb_buffer_serialize_format_t" link="harfbuzz-Buffers.html#hb-buffer-serialize-format-t" since="0.9.2"/>
+ <keyword type="enum" name="enum hb_buffer_serialize_flags_t" link="harfbuzz-Buffers.html#hb-buffer-serialize-flags-t" since="0.9.20"/>
+ <keyword type="function" name="hb_blob_create ()" link="harfbuzz-hb-blob.html#hb-blob-create" since="0.9.2"/>
+ <keyword type="function" name="hb_blob_create_sub_blob ()" link="harfbuzz-hb-blob.html#hb-blob-create-sub-blob" since="0.9.2"/>
+ <keyword type="function" name="hb_blob_destroy ()" link="harfbuzz-hb-blob.html#hb-blob-destroy" since="0.9.2"/>
+ <keyword type="function" name="hb_blob_get_data ()" link="harfbuzz-hb-blob.html#hb-blob-get-data" since="0.9.2"/>
+ <keyword type="function" name="hb_blob_get_data_writable ()" link="harfbuzz-hb-blob.html#hb-blob-get-data-writable" since="0.9.2"/>
+ <keyword type="function" name="hb_blob_get_empty ()" link="harfbuzz-hb-blob.html#hb-blob-get-empty" since="0.9.2"/>
+ <keyword type="function" name="hb_blob_get_length ()" link="harfbuzz-hb-blob.html#hb-blob-get-length" since="0.9.2"/>
+ <keyword type="function" name="hb_blob_get_user_data ()" link="harfbuzz-hb-blob.html#hb-blob-get-user-data" since="0.9.2"/>
+ <keyword type="function" name="hb_blob_is_immutable ()" link="harfbuzz-hb-blob.html#hb-blob-is-immutable" since="0.9.2"/>
+ <keyword type="function" name="hb_blob_make_immutable ()" link="harfbuzz-hb-blob.html#hb-blob-make-immutable" since="0.9.2"/>
+ <keyword type="function" name="hb_blob_reference ()" link="harfbuzz-hb-blob.html#hb-blob-reference" since="0.9.2"/>
+ <keyword type="function" name="hb_blob_set_user_data ()" link="harfbuzz-hb-blob.html#hb-blob-set-user-data" since="0.9.2"/>
+ <keyword type="typedef" name="hb_blob_t" link="harfbuzz-hb-blob.html#hb-blob-t"/>
+ <keyword type="enum" name="enum hb_memory_mode_t" link="harfbuzz-hb-blob.html#hb-memory-mode-t"/>
+ <keyword type="function" name="hb_face_create ()" link="harfbuzz-hb-face.html#hb-face-create" since="0.9.2"/>
+ <keyword type="function" name="hb_face_create_for_tables ()" link="harfbuzz-hb-face.html#hb-face-create-for-tables" since="0.9.2"/>
+ <keyword type="function" name="hb_face_destroy ()" link="harfbuzz-hb-face.html#hb-face-destroy" since="0.9.2"/>
+ <keyword type="function" name="hb_face_get_empty ()" link="harfbuzz-hb-face.html#hb-face-get-empty" since="0.9.2"/>
+ <keyword type="function" name="hb_face_get_glyph_count ()" link="harfbuzz-hb-face.html#hb-face-get-glyph-count" since="0.9.7"/>
+ <keyword type="function" name="hb_face_get_index ()" link="harfbuzz-hb-face.html#hb-face-get-index" since="0.9.2"/>
+ <keyword type="function" name="hb_face_get_upem ()" link="harfbuzz-hb-face.html#hb-face-get-upem" since="0.9.2"/>
+ <keyword type="function" name="hb_face_get_user_data ()" link="harfbuzz-hb-face.html#hb-face-get-user-data" since="0.9.2"/>
+ <keyword type="function" name="hb_face_is_immutable ()" link="harfbuzz-hb-face.html#hb-face-is-immutable" since="0.9.2"/>
+ <keyword type="function" name="hb_face_make_immutable ()" link="harfbuzz-hb-face.html#hb-face-make-immutable" since="0.9.2"/>
+ <keyword type="function" name="hb_face_reference ()" link="harfbuzz-hb-face.html#hb-face-reference" since="0.9.2"/>
+ <keyword type="function" name="hb_face_reference_blob ()" link="harfbuzz-hb-face.html#hb-face-reference-blob" since="0.9.2"/>
+ <keyword type="function" name="hb_face_reference_table ()" link="harfbuzz-hb-face.html#hb-face-reference-table" since="0.9.2"/>
+ <keyword type="function" name="hb_face_set_glyph_count ()" link="harfbuzz-hb-face.html#hb-face-set-glyph-count" since="0.9.7"/>
+ <keyword type="function" name="hb_face_set_index ()" link="harfbuzz-hb-face.html#hb-face-set-index" since="0.9.2"/>
+ <keyword type="function" name="hb_face_set_upem ()" link="harfbuzz-hb-face.html#hb-face-set-upem" since="0.9.2"/>
+ <keyword type="function" name="hb_face_set_user_data ()" link="harfbuzz-hb-face.html#hb-face-set-user-data" since="0.9.2"/>
+ <keyword type="typedef" name="hb_face_t" link="harfbuzz-hb-face.html#hb-face-t"/>
+ <keyword type="function" name="hb_font_add_glyph_origin_for_direction ()" link="harfbuzz-hb-font.html#hb-font-add-glyph-origin-for-direction" since="0.9.2"/>
+ <keyword type="function" name="hb_font_create ()" link="harfbuzz-hb-font.html#hb-font-create" since="0.9.2"/>
+ <keyword type="function" name="hb_font_create_sub_font ()" link="harfbuzz-hb-font.html#hb-font-create-sub-font" since="0.9.2"/>
+ <keyword type="function" name="hb_font_destroy ()" link="harfbuzz-hb-font.html#hb-font-destroy" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_create ()" link="harfbuzz-hb-font.html#hb-font-funcs-create" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_destroy ()" link="harfbuzz-hb-font.html#hb-font-funcs-destroy" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_get_empty ()" link="harfbuzz-hb-font.html#hb-font-funcs-get-empty" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_get_user_data ()" link="harfbuzz-hb-font.html#hb-font-funcs-get-user-data" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_is_immutable ()" link="harfbuzz-hb-font.html#hb-font-funcs-is-immutable" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_make_immutable ()" link="harfbuzz-hb-font.html#hb-font-funcs-make-immutable" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_reference ()" link="harfbuzz-hb-font.html#hb-font-funcs-reference" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_set_glyph_contour_point_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-contour-point-func" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_set_glyph_extents_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-extents-func" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_set_glyph_from_name_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-from-name-func" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_set_glyph_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-func" deprecated="1.2.3" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_set_glyph_h_advance_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-h-advance-func" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_set_glyph_h_kerning_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-h-kerning-func" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_set_glyph_h_origin_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-h-origin-func" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_set_glyph_name_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-name-func" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_set_glyph_v_advance_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-v-advance-func" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_set_glyph_v_kerning_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-v-kerning-func" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_set_glyph_v_origin_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-v-origin-func" since="0.9.2"/>
+ <keyword type="function" name="hb_font_funcs_set_user_data ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-user-data" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_empty ()" link="harfbuzz-hb-font.html#hb-font-get-empty" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_face ()" link="harfbuzz-hb-font.html#hb-font-get-face" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_glyph ()" link="harfbuzz-hb-font.html#hb-font-get-glyph" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_glyph_advance_for_direction ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-advance-for-direction" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_glyph_advance_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-advance-func-t"/>
+ <keyword type="function" name="hb_font_get_glyph_contour_point ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-contour-point" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_glyph_contour_point_for_origin ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-contour-point-for-origin" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_glyph_contour_point_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-contour-point-func-t"/>
+ <keyword type="function" name="hb_font_get_glyph_extents ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-extents" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_glyph_extents_for_origin ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-extents-for-origin" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_glyph_extents_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-extents-func-t"/>
+ <keyword type="function" name="hb_font_get_glyph_from_name ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-from-name" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_glyph_from_name_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-from-name-func-t"/>
+ <keyword type="function" name="hb_font_get_glyph_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-func-t" deprecated=""/>
+ <keyword type="function" name="hb_font_get_glyph_h_advance ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-h-advance" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_glyph_h_kerning ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-h-kerning" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_glyph_h_origin ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-h-origin" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_glyph_kerning_for_direction ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-kerning-for-direction" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_glyph_kerning_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-kerning-func-t"/>
+ <keyword type="function" name="hb_font_get_glyph_name ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-name" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_glyph_name_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-name-func-t"/>
+ <keyword type="function" name="hb_font_get_glyph_origin_for_direction ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-origin-for-direction" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_glyph_origin_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-origin-func-t"/>
+ <keyword type="function" name="hb_font_get_glyph_v_advance ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-v-advance" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_glyph_v_kerning ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-v-kerning" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_glyph_v_origin ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-v-origin" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_parent ()" link="harfbuzz-hb-font.html#hb-font-get-parent" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_ppem ()" link="harfbuzz-hb-font.html#hb-font-get-ppem" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_scale ()" link="harfbuzz-hb-font.html#hb-font-get-scale" since="0.9.2"/>
+ <keyword type="function" name="hb_font_get_user_data ()" link="harfbuzz-hb-font.html#hb-font-get-user-data" since="0.9.2"/>
+ <keyword type="function" name="hb_font_glyph_from_string ()" link="harfbuzz-hb-font.html#hb-font-glyph-from-string" since="0.9.2"/>
+ <keyword type="function" name="hb_font_glyph_to_string ()" link="harfbuzz-hb-font.html#hb-font-glyph-to-string" since="0.9.2"/>
+ <keyword type="function" name="hb_font_is_immutable ()" link="harfbuzz-hb-font.html#hb-font-is-immutable" since="0.9.2"/>
+ <keyword type="function" name="hb_font_make_immutable ()" link="harfbuzz-hb-font.html#hb-font-make-immutable" since="0.9.2"/>
+ <keyword type="function" name="hb_font_reference ()" link="harfbuzz-hb-font.html#hb-font-reference" since="0.9.2"/>
+ <keyword type="function" name="hb_font_set_funcs ()" link="harfbuzz-hb-font.html#hb-font-set-funcs" since="0.9.2"/>
+ <keyword type="function" name="hb_font_set_funcs_data ()" link="harfbuzz-hb-font.html#hb-font-set-funcs-data" since="0.9.2"/>
+ <keyword type="function" name="hb_font_set_ppem ()" link="harfbuzz-hb-font.html#hb-font-set-ppem" since="0.9.2"/>
+ <keyword type="function" name="hb_font_set_scale ()" link="harfbuzz-hb-font.html#hb-font-set-scale" since="0.9.2"/>
+ <keyword type="function" name="hb_font_set_user_data ()" link="harfbuzz-hb-font.html#hb-font-set-user-data" since="0.9.2"/>
+ <keyword type="function" name="hb_font_subtract_glyph_origin_for_direction ()" link="harfbuzz-hb-font.html#hb-font-subtract-glyph-origin-for-direction" since="0.9.2"/>
+ <keyword type="function" name="hb_reference_table_func_t ()" link="harfbuzz-hb-font.html#hb-reference-table-func-t"/>
+ <keyword type="function" name="hb_font_funcs_set_font_h_extents_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-font-h-extents-func" since="1.1.2"/>
+ <keyword type="function" name="hb_font_funcs_set_font_v_extents_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-font-v-extents-func" since="1.1.2"/>
+ <keyword type="function" name="hb_font_get_extents_for_direction ()" link="harfbuzz-hb-font.html#hb-font-get-extents-for-direction" since="1.1.3"/>
+ <keyword type="function" name="hb_font_get_font_extents_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-font-extents-func-t"/>
+ <keyword type="function" name="hb_font_get_h_extents ()" link="harfbuzz-hb-font.html#hb-font-get-h-extents" since="1.1.3"/>
+ <keyword type="function" name="hb_font_get_v_extents ()" link="harfbuzz-hb-font.html#hb-font-get-v-extents" since="1.1.3"/>
+ <keyword type="function" name="hb_font_set_parent ()" link="harfbuzz-hb-font.html#hb-font-set-parent" since="1.0.5"/>
+ <keyword type="typedef" name="hb_font_funcs_t" link="harfbuzz-hb-font.html#hb-font-funcs-t"/>
+ <keyword type="typedef" name="hb_font_get_glyph_h_advance_func_t" link="harfbuzz-hb-font.html#hb-font-get-glyph-h-advance-func-t"/>
+ <keyword type="typedef" name="hb_font_get_glyph_h_kerning_func_t" link="harfbuzz-hb-font.html#hb-font-get-glyph-h-kerning-func-t"/>
+ <keyword type="typedef" name="hb_font_get_glyph_h_origin_func_t" link="harfbuzz-hb-font.html#hb-font-get-glyph-h-origin-func-t"/>
+ <keyword type="typedef" name="hb_font_get_glyph_v_advance_func_t" link="harfbuzz-hb-font.html#hb-font-get-glyph-v-advance-func-t"/>
+ <keyword type="typedef" name="hb_font_get_glyph_v_kerning_func_t" link="harfbuzz-hb-font.html#hb-font-get-glyph-v-kerning-func-t"/>
+ <keyword type="typedef" name="hb_font_get_glyph_v_origin_func_t" link="harfbuzz-hb-font.html#hb-font-get-glyph-v-origin-func-t"/>
+ <keyword type="typedef" name="hb_font_t" link="harfbuzz-hb-font.html#hb-font-t"/>
+ <keyword type="typedef" name="hb_font_get_font_h_extents_func_t" link="harfbuzz-hb-font.html#hb-font-get-font-h-extents-func-t"/>
+ <keyword type="typedef" name="hb_font_get_font_v_extents_func_t" link="harfbuzz-hb-font.html#hb-font-get-font-v-extents-func-t"/>
+ <keyword type="function" name="hb_feature_from_string ()" link="harfbuzz-Shaping.html#hb-feature-from-string" since="0.9.5"/>
+ <keyword type="function" name="hb_feature_to_string ()" link="harfbuzz-Shaping.html#hb-feature-to-string" since="0.9.5"/>
+ <keyword type="function" name="hb_shape ()" link="harfbuzz-Shaping.html#hb-shape" since="0.9.2"/>
+ <keyword type="function" name="hb_shape_full ()" link="harfbuzz-Shaping.html#hb-shape-full" since="0.9.2"/>
+ <keyword type="function" name="hb_shape_list_shapers ()" link="harfbuzz-Shaping.html#hb-shape-list-shapers" since="0.9.2"/>
+ <keyword type="struct" name="hb_feature_t" link="harfbuzz-Shaping.html#hb-feature-t-struct"/>
+ <keyword type="macro" name="HB_VERSION_ATLEAST()" link="harfbuzz-hb-version.html#HB-VERSION-ATLEAST:CAPS"/>
+ <keyword type="function" name="hb_version ()" link="harfbuzz-hb-version.html#hb-version" since="0.9.2"/>
+ <keyword type="function" name="hb_version_atleast ()" link="harfbuzz-hb-version.html#hb-version-atleast" since="0.9.30"/>
+ <keyword type="function" name="hb_version_string ()" link="harfbuzz-hb-version.html#hb-version-string" since="0.9.2"/>
+ <keyword type="macro" name="HB_VERSION_MAJOR" link="harfbuzz-hb-version.html#HB-VERSION-MAJOR:CAPS"/>
+ <keyword type="macro" name="HB_VERSION_MICRO" link="harfbuzz-hb-version.html#HB-VERSION-MICRO:CAPS"/>
+ <keyword type="macro" name="HB_VERSION_MINOR" link="harfbuzz-hb-version.html#HB-VERSION-MINOR:CAPS"/>
+ <keyword type="macro" name="HB_VERSION_STRING" link="harfbuzz-hb-version.html#HB-VERSION-STRING:CAPS"/>
+ <keyword type="macro" name="HB_BUFFER_FLAGS_DEFAULT" link="harfbuzz-hb-deprecated.html#HB-BUFFER-FLAGS-DEFAULT:CAPS" deprecated=""/>
+ <keyword type="macro" name="HB_BUFFER_SERIALIZE_FLAGS_DEFAULT" link="harfbuzz-hb-deprecated.html#HB-BUFFER-SERIALIZE-FLAGS-DEFAULT:CAPS" deprecated=""/>
+ <keyword type="macro" name="HB_SCRIPT_CANADIAN_ABORIGINAL" link="harfbuzz-hb-deprecated.html#HB-SCRIPT-CANADIAN-ABORIGINAL:CAPS" deprecated=""/>
+ <keyword type="function" name="hb_set_add ()" link="harfbuzz-hb-set.html#hb-set-add" since="0.9.2"/>
+ <keyword type="function" name="hb_set_add_range ()" link="harfbuzz-hb-set.html#hb-set-add-range" since="0.9.7"/>
+ <keyword type="function" name="hb_set_allocation_successful ()" link="harfbuzz-hb-set.html#hb-set-allocation-successful" since="0.9.2"/>
+ <keyword type="function" name="hb_set_clear ()" link="harfbuzz-hb-set.html#hb-set-clear" since="0.9.2"/>
+ <keyword type="function" name="hb_set_create ()" link="harfbuzz-hb-set.html#hb-set-create" since="0.9.2"/>
+ <keyword type="function" name="hb_set_del ()" link="harfbuzz-hb-set.html#hb-set-del" since="0.9.2"/>
+ <keyword type="function" name="hb_set_del_range ()" link="harfbuzz-hb-set.html#hb-set-del-range" since="0.9.7"/>
+ <keyword type="function" name="hb_set_destroy ()" link="harfbuzz-hb-set.html#hb-set-destroy" since="0.9.2"/>
+ <keyword type="function" name="hb_set_get_empty ()" link="harfbuzz-hb-set.html#hb-set-get-empty" since="0.9.2"/>
+ <keyword type="function" name="hb_set_get_max ()" link="harfbuzz-hb-set.html#hb-set-get-max" since="0.9.7"/>
+ <keyword type="function" name="hb_set_get_min ()" link="harfbuzz-hb-set.html#hb-set-get-min" since="0.9.7"/>
+ <keyword type="function" name="hb_set_get_population ()" link="harfbuzz-hb-set.html#hb-set-get-population" since="0.9.7"/>
+ <keyword type="function" name="hb_set_get_user_data ()" link="harfbuzz-hb-set.html#hb-set-get-user-data" since="0.9.2"/>
+ <keyword type="function" name="hb_set_has ()" link="harfbuzz-hb-set.html#hb-set-has" since="0.9.2"/>
+ <keyword type="function" name="hb_set_intersect ()" link="harfbuzz-hb-set.html#hb-set-intersect" since="0.9.2"/>
+ <keyword type="function" name="hb_set_invert ()" link="harfbuzz-hb-set.html#hb-set-invert" since="0.9.10"/>
+ <keyword type="function" name="hb_set_is_empty ()" link="harfbuzz-hb-set.html#hb-set-is-empty" since="0.9.7"/>
+ <keyword type="function" name="hb_set_is_equal ()" link="harfbuzz-hb-set.html#hb-set-is-equal" since="0.9.7"/>
+ <keyword type="function" name="hb_set_next ()" link="harfbuzz-hb-set.html#hb-set-next" since="0.9.2"/>
+ <keyword type="function" name="hb_set_next_range ()" link="harfbuzz-hb-set.html#hb-set-next-range" since="0.9.7"/>
+ <keyword type="function" name="hb_set_reference ()" link="harfbuzz-hb-set.html#hb-set-reference" since="0.9.2"/>
+ <keyword type="function" name="hb_set_set ()" link="harfbuzz-hb-set.html#hb-set-set" since="0.9.2"/>
+ <keyword type="function" name="hb_set_set_user_data ()" link="harfbuzz-hb-set.html#hb-set-set-user-data" since="0.9.2"/>
+ <keyword type="function" name="hb_set_subtract ()" link="harfbuzz-hb-set.html#hb-set-subtract" since="0.9.2"/>
+ <keyword type="function" name="hb_set_symmetric_difference ()" link="harfbuzz-hb-set.html#hb-set-symmetric-difference" since="0.9.2"/>
+ <keyword type="function" name="hb_set_union ()" link="harfbuzz-hb-set.html#hb-set-union" since="0.9.2"/>
+ <keyword type="macro" name="HB_SET_VALUE_INVALID" link="harfbuzz-hb-set.html#HB-SET-VALUE-INVALID:CAPS"/>
+ <keyword type="typedef" name="hb_set_t" link="harfbuzz-hb-set.html#hb-set-t"/>
+ <keyword type="function" name="hb_ot_layout_collect_lookups ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-collect-lookups" since="0.9.8"/>
+ <keyword type="function" name="hb_ot_layout_feature_get_lookups ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-feature-get-lookups" since="0.9.7"/>
+ <keyword type="function" name="hb_ot_layout_get_attach_points ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-get-attach-points"/>
+ <keyword type="function" name="hb_ot_layout_get_glyph_class ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-get-glyph-class" since="0.9.7"/>
+ <keyword type="function" name="hb_ot_layout_get_glyphs_in_class ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-get-glyphs-in-class" since="0.9.7"/>
+ <keyword type="function" name="hb_ot_layout_get_ligature_carets ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-get-ligature-carets"/>
+ <keyword type="function" name="hb_ot_layout_get_size_params ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-get-size-params" since="0.9.10"/>
+ <keyword type="function" name="hb_ot_layout_glyph_sequence_func_t ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-glyph-sequence-func-t"/>
+ <keyword type="function" name="hb_ot_layout_has_glyph_classes ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-has-glyph-classes"/>
+ <keyword type="function" name="hb_ot_layout_has_positioning ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-has-positioning"/>
+ <keyword type="function" name="hb_ot_layout_has_substitution ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-has-substitution"/>
+ <keyword type="function" name="hb_ot_layout_language_find_feature ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-language-find-feature"/>
+ <keyword type="function" name="hb_ot_layout_language_get_feature_indexes ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-language-get-feature-indexes"/>
+ <keyword type="function" name="hb_ot_layout_language_get_feature_tags ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-language-get-feature-tags"/>
+ <keyword type="function" name="hb_ot_layout_language_get_required_feature ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-language-get-required-feature" since="0.9.30"/>
+ <keyword type="function" name="hb_ot_layout_lookup_collect_glyphs ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-lookup-collect-glyphs" since="0.9.7"/>
+ <keyword type="function" name="hb_ot_layout_lookup_substitute_closure ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-lookup-substitute-closure" since="0.9.7"/>
+ <keyword type="function" name="hb_ot_layout_lookup_would_substitute ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-lookup-would-substitute" since="0.9.7"/>
+ <keyword type="function" name="hb_ot_layout_script_find_language ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-script-find-language"/>
+ <keyword type="function" name="hb_ot_layout_script_get_language_tags ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-script-get-language-tags"/>
+ <keyword type="function" name="hb_ot_layout_table_choose_script ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-table-choose-script"/>
+ <keyword type="function" name="hb_ot_layout_table_find_script ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-table-find-script"/>
+ <keyword type="function" name="hb_ot_layout_table_get_feature_tags ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-table-get-feature-tags"/>
+ <keyword type="function" name="hb_ot_layout_table_get_script_tags ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-table-get-script-tags"/>
+ <keyword type="function" name="hb_ot_layout_table_get_lookup_count ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-table-get-lookup-count" since="0.9.22"/>
+ <keyword type="function" name="hb_ot_shape_plan_collect_lookups ()" link="harfbuzz-hb-ot-layout.html#hb-ot-shape-plan-collect-lookups" since="0.9.7"/>
+ <keyword type="function" name="hb_ot_layout_language_get_required_feature_index ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-language-get-required-feature-index"/>
+ <keyword type="macro" name="HB_OT_LAYOUT_DEFAULT_LANGUAGE_INDEX" link="harfbuzz-hb-ot-layout.html#HB-OT-LAYOUT-DEFAULT-LANGUAGE-INDEX:CAPS"/>
+ <keyword type="macro" name="HB_OT_LAYOUT_NO_FEATURE_INDEX" link="harfbuzz-hb-ot-layout.html#HB-OT-LAYOUT-NO-FEATURE-INDEX:CAPS"/>
+ <keyword type="macro" name="HB_OT_LAYOUT_NO_SCRIPT_INDEX" link="harfbuzz-hb-ot-layout.html#HB-OT-LAYOUT-NO-SCRIPT-INDEX:CAPS"/>
+ <keyword type="macro" name="HB_OT_TAG_GDEF" link="harfbuzz-hb-ot-layout.html#HB-OT-TAG-GDEF:CAPS"/>
+ <keyword type="macro" name="HB_OT_TAG_GPOS" link="harfbuzz-hb-ot-layout.html#HB-OT-TAG-GPOS:CAPS"/>
+ <keyword type="macro" name="HB_OT_TAG_GSUB" link="harfbuzz-hb-ot-layout.html#HB-OT-TAG-GSUB:CAPS"/>
+ <keyword type="macro" name="HB_OT_TAG_JSTF" link="harfbuzz-hb-ot-layout.html#HB-OT-TAG-JSTF:CAPS"/>
+ <keyword type="enum" name="enum hb_ot_layout_glyph_class_t" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-glyph-class-t"/>
+ <keyword type="function" name="hb_ot_tag_from_language ()" link="harfbuzz-hb-ot-tag.html#hb-ot-tag-from-language"/>
+ <keyword type="function" name="hb_ot_tag_to_language ()" link="harfbuzz-hb-ot-tag.html#hb-ot-tag-to-language" since="0.9.2"/>
+ <keyword type="function" name="hb_ot_tag_to_script ()" link="harfbuzz-hb-ot-tag.html#hb-ot-tag-to-script"/>
+ <keyword type="function" name="hb_ot_tags_from_script ()" link="harfbuzz-hb-ot-tag.html#hb-ot-tags-from-script"/>
+ <keyword type="macro" name="HB_OT_TAG_DEFAULT_LANGUAGE" link="harfbuzz-hb-ot-tag.html#HB-OT-TAG-DEFAULT-LANGUAGE:CAPS"/>
+ <keyword type="macro" name="HB_OT_TAG_DEFAULT_SCRIPT" link="harfbuzz-hb-ot-tag.html#HB-OT-TAG-DEFAULT-SCRIPT:CAPS"/>
+ <keyword type="function" name="hb_ot_font_set_funcs ()" link="harfbuzz-hb-ot-font.html#hb-ot-font-set-funcs" since="0.9.28"/>
+ <keyword type="function" name="hb_ot_shape_glyphs_closure ()" link="harfbuzz-hb-ot-shape.html#hb-ot-shape-glyphs-closure" since="0.9.2"/>
+ <keyword type="function" name="hb_shape_plan_create ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-create" since="0.9.7"/>
+ <keyword type="function" name="hb_shape_plan_create_cached ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-create-cached" since="0.9.7"/>
+ <keyword type="function" name="hb_shape_plan_destroy ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-destroy" since="0.9.7"/>
+ <keyword type="function" name="hb_shape_plan_execute ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-execute" since="0.9.7"/>
+ <keyword type="function" name="hb_shape_plan_get_empty ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-get-empty" since="0.9.7"/>
+ <keyword type="function" name="hb_shape_plan_get_shaper ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-get-shaper" since="0.9.7"/>
+ <keyword type="function" name="hb_shape_plan_get_user_data ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-get-user-data" since="0.9.7"/>
+ <keyword type="function" name="hb_shape_plan_reference ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-reference" since="0.9.7"/>
+ <keyword type="function" name="hb_shape_plan_set_user_data ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-set-user-data" since="0.9.7"/>
+ <keyword type="typedef" name="hb_shape_plan_t" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-t"/>
+ <keyword type="function" name="hb_glib_get_unicode_funcs ()" link="harfbuzz-hb-glib.html#hb-glib-get-unicode-funcs"/>
+ <keyword type="function" name="hb_glib_script_from_script ()" link="harfbuzz-hb-glib.html#hb-glib-script-from-script"/>
+ <keyword type="function" name="hb_glib_script_to_script ()" link="harfbuzz-hb-glib.html#hb-glib-script-to-script"/>
+ <keyword type="function" name="hb_glib_blob_create ()" link="harfbuzz-hb-glib.html#hb-glib-blob-create" since="0.9.38"/>
+ <keyword type="function" name="hb_icu_get_unicode_funcs ()" link="harfbuzz-hb-icu.html#hb-icu-get-unicode-funcs"/>
+ <keyword type="function" name="hb_icu_script_from_script ()" link="harfbuzz-hb-icu.html#hb-icu-script-from-script"/>
+ <keyword type="function" name="hb_icu_script_to_script ()" link="harfbuzz-hb-icu.html#hb-icu-script-to-script"/>
+ <keyword type="function" name="hb_ft_face_create ()" link="harfbuzz-hb-ft.html#hb-ft-face-create" since="0.9.2"/>
+ <keyword type="function" name="hb_ft_face_create_cached ()" link="harfbuzz-hb-ft.html#hb-ft-face-create-cached" since="0.9.2"/>
+ <keyword type="function" name="hb_ft_face_create_referenced ()" link="harfbuzz-hb-ft.html#hb-ft-face-create-referenced" since="0.9.38"/>
+ <keyword type="function" name="hb_ft_font_create ()" link="harfbuzz-hb-ft.html#hb-ft-font-create" since="0.9.2"/>
+ <keyword type="function" name="hb_ft_font_create_referenced ()" link="harfbuzz-hb-ft.html#hb-ft-font-create-referenced" since="0.9.38"/>
+ <keyword type="function" name="hb_ft_font_get_face ()" link="harfbuzz-hb-ft.html#hb-ft-font-get-face"/>
+ <keyword type="function" name="hb_ft_font_set_load_flags ()" link="harfbuzz-hb-ft.html#hb-ft-font-set-load-flags" since="1.0.5"/>
+ <keyword type="function" name="hb_ft_font_get_load_flags ()" link="harfbuzz-hb-ft.html#hb-ft-font-get-load-flags" since="1.0.5"/>
+ <keyword type="function" name="hb_ft_font_set_funcs ()" link="harfbuzz-hb-ft.html#hb-ft-font-set-funcs"/>
+ <keyword type="function" name="hb_graphite2_face_get_gr_face ()" link="harfbuzz-hb-graphite2.html#hb-graphite2-face-get-gr-face"/>
+ <keyword type="function" name="hb_graphite2_font_get_gr_font ()" link="harfbuzz-hb-graphite2.html#hb-graphite2-font-get-gr-font"/>
+ <keyword type="macro" name="HB_GRAPHITE2_TAG_SILF" link="harfbuzz-hb-graphite2.html#HB-GRAPHITE2-TAG-SILF:CAPS"/>
+ <keyword type="function" name="hb_uniscribe_font_get_hfont ()" link="harfbuzz-hb-uniscribe.html#hb-uniscribe-font-get-hfont"/>
+ <keyword type="function" name="hb_uniscribe_font_get_logfontw ()" link="harfbuzz-hb-uniscribe.html#hb-uniscribe-font-get-logfontw"/>
+ <keyword type="function" name="hb_coretext_face_create ()" link="harfbuzz-hb-coretext.html#hb-coretext-face-create"/>
+ <keyword type="function" name="hb_coretext_face_get_cg_font ()" link="harfbuzz-hb-coretext.html#hb-coretext-face-get-cg-font"/>
+ <keyword type="function" name="hb_coretext_font_get_ct_font ()" link="harfbuzz-hb-coretext.html#hb-coretext-font-get-ct-font"/>
+ <keyword type="macro" name="HB_CORETEXT_TAG_MORT" link="harfbuzz-hb-coretext.html#HB-CORETEXT-TAG-MORT:CAPS"/>
+ <keyword type="macro" name="HB_CORETEXT_TAG_MORX" link="harfbuzz-hb-coretext.html#HB-CORETEXT-TAG-MORX:CAPS"/>
+ <keyword type="function" name="hb_gobject_blob_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-blob-get-type"/>
+ <keyword type="function" name="hb_gobject_buffer_content_type_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-buffer-content-type-get-type"/>
+ <keyword type="function" name="hb_gobject_buffer_flags_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-buffer-flags-get-type"/>
+ <keyword type="function" name="hb_gobject_buffer_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-buffer-get-type"/>
+ <keyword type="function" name="hb_gobject_buffer_serialize_flags_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-buffer-serialize-flags-get-type"/>
+ <keyword type="function" name="hb_gobject_buffer_serialize_format_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-buffer-serialize-format-get-type"/>
+ <keyword type="function" name="hb_gobject_direction_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-direction-get-type"/>
+ <keyword type="function" name="hb_gobject_face_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-face-get-type"/>
+ <keyword type="function" name="hb_gobject_font_funcs_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-font-funcs-get-type"/>
+ <keyword type="function" name="hb_gobject_font_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-font-get-type"/>
+ <keyword type="function" name="hb_gobject_memory_mode_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-memory-mode-get-type"/>
+ <keyword type="function" name="hb_gobject_ot_layout_glyph_class_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-ot-layout-glyph-class-get-type"/>
+ <keyword type="function" name="hb_gobject_script_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-script-get-type"/>
+ <keyword type="function" name="hb_gobject_shape_plan_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-shape-plan-get-type"/>
+ <keyword type="function" name="hb_gobject_unicode_combining_class_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-unicode-combining-class-get-type"/>
+ <keyword type="function" name="hb_gobject_unicode_funcs_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-unicode-funcs-get-type"/>
+ <keyword type="function" name="hb_gobject_unicode_general_category_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-unicode-general-category-get-type"/>
+ <keyword type="function" name="hb_gobject_buffer_cluster_level_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-buffer-cluster-level-get-type"/>
+ <keyword type="function" name="hb_gobject_feature_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-feature-get-type"/>
+ <keyword type="function" name="hb_gobject_glyph_info_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-glyph-info-get-type"/>
+ <keyword type="function" name="hb_gobject_glyph_position_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-glyph-position-get-type"/>
+ <keyword type="function" name="hb_gobject_segment_properties_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-segment-properties-get-type"/>
+ <keyword type="function" name="hb_gobject_set_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-set-get-type"/>
+ <keyword type="function" name="hb_gobject_user_data_key_get_type ()" link="harfbuzz-hb-gobject.html#hb-gobject-user-data-key-get-type"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_BLOB" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BLOB:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_BUFFER" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_BUFFER_CONTENT_TYPE" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER-CONTENT-TYPE:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_BUFFER_FLAGS" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER-FLAGS:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_BUFFER_SERIALIZE_FLAGS" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER-SERIALIZE-FLAGS:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_BUFFER_SERIALIZE_FORMAT" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER-SERIALIZE-FORMAT:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_DIRECTION" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-DIRECTION:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_FACE" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-FACE:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_FONT" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-FONT:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_FONT_FUNCS" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-FONT-FUNCS:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_MEMORY_MODE" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-MEMORY-MODE:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_OT_LAYOUT_GLYPH_CLASS" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-OT-LAYOUT-GLYPH-CLASS:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_SCRIPT" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-SCRIPT:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_SHAPE_PLAN" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-SHAPE-PLAN:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_UNICODE_COMBINING_CLASS" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-UNICODE-COMBINING-CLASS:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_UNICODE_FUNCS" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-UNICODE-FUNCS:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_UNICODE_GENERAL_CATEGORY" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-UNICODE-GENERAL-CATEGORY:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_BUFFER_CLUSTER_LEVEL" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-BUFFER-CLUSTER-LEVEL:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_FEATURE" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-FEATURE:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_GLYPH_INFO" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-GLYPH-INFO:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_GLYPH_POSITION" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-GLYPH-POSITION:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_SEGMENT_PROPERTIES" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-SEGMENT-PROPERTIES:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_SET" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-SET:CAPS"/>
+ <keyword type="macro" name="HB_GOBJECT_TYPE_USER_DATA_KEY" link="harfbuzz-hb-gobject.html#HB-GOBJECT-TYPE-USER-DATA-KEY:CAPS"/>
+ <keyword type="constant" name="HB_DIRECTION_INVALID" link="harfbuzz-hb-common.html#HB-DIRECTION-INVALID:CAPS"/>
+ <keyword type="constant" name="HB_DIRECTION_LTR" link="harfbuzz-hb-common.html#HB-DIRECTION-LTR:CAPS"/>
+ <keyword type="constant" name="HB_DIRECTION_RTL" link="harfbuzz-hb-common.html#HB-DIRECTION-RTL:CAPS"/>
+ <keyword type="constant" name="HB_DIRECTION_TTB" link="harfbuzz-hb-common.html#HB-DIRECTION-TTB:CAPS"/>
+ <keyword type="constant" name="HB_DIRECTION_BTT" link="harfbuzz-hb-common.html#HB-DIRECTION-BTT:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_COMMON" link="harfbuzz-hb-common.html#HB-SCRIPT-COMMON:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_INHERITED" link="harfbuzz-hb-common.html#HB-SCRIPT-INHERITED:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_UNKNOWN" link="harfbuzz-hb-common.html#HB-SCRIPT-UNKNOWN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_ARABIC" link="harfbuzz-hb-common.html#HB-SCRIPT-ARABIC:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_ARMENIAN" link="harfbuzz-hb-common.html#HB-SCRIPT-ARMENIAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_BENGALI" link="harfbuzz-hb-common.html#HB-SCRIPT-BENGALI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_CYRILLIC" link="harfbuzz-hb-common.html#HB-SCRIPT-CYRILLIC:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_DEVANAGARI" link="harfbuzz-hb-common.html#HB-SCRIPT-DEVANAGARI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_GEORGIAN" link="harfbuzz-hb-common.html#HB-SCRIPT-GEORGIAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_GREEK" link="harfbuzz-hb-common.html#HB-SCRIPT-GREEK:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_GUJARATI" link="harfbuzz-hb-common.html#HB-SCRIPT-GUJARATI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_GURMUKHI" link="harfbuzz-hb-common.html#HB-SCRIPT-GURMUKHI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_HANGUL" link="harfbuzz-hb-common.html#HB-SCRIPT-HANGUL:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_HAN" link="harfbuzz-hb-common.html#HB-SCRIPT-HAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_HEBREW" link="harfbuzz-hb-common.html#HB-SCRIPT-HEBREW:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_HIRAGANA" link="harfbuzz-hb-common.html#HB-SCRIPT-HIRAGANA:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_KANNADA" link="harfbuzz-hb-common.html#HB-SCRIPT-KANNADA:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_KATAKANA" link="harfbuzz-hb-common.html#HB-SCRIPT-KATAKANA:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_LAO" link="harfbuzz-hb-common.html#HB-SCRIPT-LAO:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_LATIN" link="harfbuzz-hb-common.html#HB-SCRIPT-LATIN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_MALAYALAM" link="harfbuzz-hb-common.html#HB-SCRIPT-MALAYALAM:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_ORIYA" link="harfbuzz-hb-common.html#HB-SCRIPT-ORIYA:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_TAMIL" link="harfbuzz-hb-common.html#HB-SCRIPT-TAMIL:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_TELUGU" link="harfbuzz-hb-common.html#HB-SCRIPT-TELUGU:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_THAI" link="harfbuzz-hb-common.html#HB-SCRIPT-THAI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_TIBETAN" link="harfbuzz-hb-common.html#HB-SCRIPT-TIBETAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_BOPOMOFO" link="harfbuzz-hb-common.html#HB-SCRIPT-BOPOMOFO:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_BRAILLE" link="harfbuzz-hb-common.html#HB-SCRIPT-BRAILLE:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_CANADIAN_SYLLABICS" link="harfbuzz-hb-common.html#HB-SCRIPT-CANADIAN-SYLLABICS:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_CHEROKEE" link="harfbuzz-hb-common.html#HB-SCRIPT-CHEROKEE:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_ETHIOPIC" link="harfbuzz-hb-common.html#HB-SCRIPT-ETHIOPIC:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_KHMER" link="harfbuzz-hb-common.html#HB-SCRIPT-KHMER:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_MONGOLIAN" link="harfbuzz-hb-common.html#HB-SCRIPT-MONGOLIAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_MYANMAR" link="harfbuzz-hb-common.html#HB-SCRIPT-MYANMAR:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_OGHAM" link="harfbuzz-hb-common.html#HB-SCRIPT-OGHAM:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_RUNIC" link="harfbuzz-hb-common.html#HB-SCRIPT-RUNIC:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_SINHALA" link="harfbuzz-hb-common.html#HB-SCRIPT-SINHALA:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_SYRIAC" link="harfbuzz-hb-common.html#HB-SCRIPT-SYRIAC:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_THAANA" link="harfbuzz-hb-common.html#HB-SCRIPT-THAANA:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_YI" link="harfbuzz-hb-common.html#HB-SCRIPT-YI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_DESERET" link="harfbuzz-hb-common.html#HB-SCRIPT-DESERET:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_GOTHIC" link="harfbuzz-hb-common.html#HB-SCRIPT-GOTHIC:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_OLD_ITALIC" link="harfbuzz-hb-common.html#HB-SCRIPT-OLD-ITALIC:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_BUHID" link="harfbuzz-hb-common.html#HB-SCRIPT-BUHID:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_HANUNOO" link="harfbuzz-hb-common.html#HB-SCRIPT-HANUNOO:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_TAGALOG" link="harfbuzz-hb-common.html#HB-SCRIPT-TAGALOG:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_TAGBANWA" link="harfbuzz-hb-common.html#HB-SCRIPT-TAGBANWA:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_CYPRIOT" link="harfbuzz-hb-common.html#HB-SCRIPT-CYPRIOT:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_LIMBU" link="harfbuzz-hb-common.html#HB-SCRIPT-LIMBU:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_LINEAR_B" link="harfbuzz-hb-common.html#HB-SCRIPT-LINEAR-B:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_OSMANYA" link="harfbuzz-hb-common.html#HB-SCRIPT-OSMANYA:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_SHAVIAN" link="harfbuzz-hb-common.html#HB-SCRIPT-SHAVIAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_TAI_LE" link="harfbuzz-hb-common.html#HB-SCRIPT-TAI-LE:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_UGARITIC" link="harfbuzz-hb-common.html#HB-SCRIPT-UGARITIC:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_BUGINESE" link="harfbuzz-hb-common.html#HB-SCRIPT-BUGINESE:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_COPTIC" link="harfbuzz-hb-common.html#HB-SCRIPT-COPTIC:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_GLAGOLITIC" link="harfbuzz-hb-common.html#HB-SCRIPT-GLAGOLITIC:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_KHAROSHTHI" link="harfbuzz-hb-common.html#HB-SCRIPT-KHAROSHTHI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_NEW_TAI_LUE" link="harfbuzz-hb-common.html#HB-SCRIPT-NEW-TAI-LUE:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_OLD_PERSIAN" link="harfbuzz-hb-common.html#HB-SCRIPT-OLD-PERSIAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_SYLOTI_NAGRI" link="harfbuzz-hb-common.html#HB-SCRIPT-SYLOTI-NAGRI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_TIFINAGH" link="harfbuzz-hb-common.html#HB-SCRIPT-TIFINAGH:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_BALINESE" link="harfbuzz-hb-common.html#HB-SCRIPT-BALINESE:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_CUNEIFORM" link="harfbuzz-hb-common.html#HB-SCRIPT-CUNEIFORM:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_NKO" link="harfbuzz-hb-common.html#HB-SCRIPT-NKO:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_PHAGS_PA" link="harfbuzz-hb-common.html#HB-SCRIPT-PHAGS-PA:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_PHOENICIAN" link="harfbuzz-hb-common.html#HB-SCRIPT-PHOENICIAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_CARIAN" link="harfbuzz-hb-common.html#HB-SCRIPT-CARIAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_CHAM" link="harfbuzz-hb-common.html#HB-SCRIPT-CHAM:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_KAYAH_LI" link="harfbuzz-hb-common.html#HB-SCRIPT-KAYAH-LI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_LEPCHA" link="harfbuzz-hb-common.html#HB-SCRIPT-LEPCHA:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_LYCIAN" link="harfbuzz-hb-common.html#HB-SCRIPT-LYCIAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_LYDIAN" link="harfbuzz-hb-common.html#HB-SCRIPT-LYDIAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_OL_CHIKI" link="harfbuzz-hb-common.html#HB-SCRIPT-OL-CHIKI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_REJANG" link="harfbuzz-hb-common.html#HB-SCRIPT-REJANG:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_SAURASHTRA" link="harfbuzz-hb-common.html#HB-SCRIPT-SAURASHTRA:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_SUNDANESE" link="harfbuzz-hb-common.html#HB-SCRIPT-SUNDANESE:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_VAI" link="harfbuzz-hb-common.html#HB-SCRIPT-VAI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_AVESTAN" link="harfbuzz-hb-common.html#HB-SCRIPT-AVESTAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_BAMUM" link="harfbuzz-hb-common.html#HB-SCRIPT-BAMUM:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_EGYPTIAN_HIEROGLYPHS" link="harfbuzz-hb-common.html#HB-SCRIPT-EGYPTIAN-HIEROGLYPHS:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_IMPERIAL_ARAMAIC" link="harfbuzz-hb-common.html#HB-SCRIPT-IMPERIAL-ARAMAIC:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_INSCRIPTIONAL_PAHLAVI" link="harfbuzz-hb-common.html#HB-SCRIPT-INSCRIPTIONAL-PAHLAVI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_INSCRIPTIONAL_PARTHIAN" link="harfbuzz-hb-common.html#HB-SCRIPT-INSCRIPTIONAL-PARTHIAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_JAVANESE" link="harfbuzz-hb-common.html#HB-SCRIPT-JAVANESE:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_KAITHI" link="harfbuzz-hb-common.html#HB-SCRIPT-KAITHI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_LISU" link="harfbuzz-hb-common.html#HB-SCRIPT-LISU:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_MEETEI_MAYEK" link="harfbuzz-hb-common.html#HB-SCRIPT-MEETEI-MAYEK:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_OLD_SOUTH_ARABIAN" link="harfbuzz-hb-common.html#HB-SCRIPT-OLD-SOUTH-ARABIAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_OLD_TURKIC" link="harfbuzz-hb-common.html#HB-SCRIPT-OLD-TURKIC:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_SAMARITAN" link="harfbuzz-hb-common.html#HB-SCRIPT-SAMARITAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_TAI_THAM" link="harfbuzz-hb-common.html#HB-SCRIPT-TAI-THAM:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_TAI_VIET" link="harfbuzz-hb-common.html#HB-SCRIPT-TAI-VIET:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_BATAK" link="harfbuzz-hb-common.html#HB-SCRIPT-BATAK:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_BRAHMI" link="harfbuzz-hb-common.html#HB-SCRIPT-BRAHMI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_MANDAIC" link="harfbuzz-hb-common.html#HB-SCRIPT-MANDAIC:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_CHAKMA" link="harfbuzz-hb-common.html#HB-SCRIPT-CHAKMA:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_MEROITIC_CURSIVE" link="harfbuzz-hb-common.html#HB-SCRIPT-MEROITIC-CURSIVE:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_MEROITIC_HIEROGLYPHS" link="harfbuzz-hb-common.html#HB-SCRIPT-MEROITIC-HIEROGLYPHS:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_MIAO" link="harfbuzz-hb-common.html#HB-SCRIPT-MIAO:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_SHARADA" link="harfbuzz-hb-common.html#HB-SCRIPT-SHARADA:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_SORA_SOMPENG" link="harfbuzz-hb-common.html#HB-SCRIPT-SORA-SOMPENG:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_TAKRI" link="harfbuzz-hb-common.html#HB-SCRIPT-TAKRI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_BASSA_VAH" link="harfbuzz-hb-common.html#HB-SCRIPT-BASSA-VAH:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_CAUCASIAN_ALBANIAN" link="harfbuzz-hb-common.html#HB-SCRIPT-CAUCASIAN-ALBANIAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_DUPLOYAN" link="harfbuzz-hb-common.html#HB-SCRIPT-DUPLOYAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_ELBASAN" link="harfbuzz-hb-common.html#HB-SCRIPT-ELBASAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_GRANTHA" link="harfbuzz-hb-common.html#HB-SCRIPT-GRANTHA:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_KHOJKI" link="harfbuzz-hb-common.html#HB-SCRIPT-KHOJKI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_KHUDAWADI" link="harfbuzz-hb-common.html#HB-SCRIPT-KHUDAWADI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_LINEAR_A" link="harfbuzz-hb-common.html#HB-SCRIPT-LINEAR-A:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_MAHAJANI" link="harfbuzz-hb-common.html#HB-SCRIPT-MAHAJANI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_MANICHAEAN" link="harfbuzz-hb-common.html#HB-SCRIPT-MANICHAEAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_MENDE_KIKAKUI" link="harfbuzz-hb-common.html#HB-SCRIPT-MENDE-KIKAKUI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_MODI" link="harfbuzz-hb-common.html#HB-SCRIPT-MODI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_MRO" link="harfbuzz-hb-common.html#HB-SCRIPT-MRO:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_NABATAEAN" link="harfbuzz-hb-common.html#HB-SCRIPT-NABATAEAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_OLD_NORTH_ARABIAN" link="harfbuzz-hb-common.html#HB-SCRIPT-OLD-NORTH-ARABIAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_OLD_PERMIC" link="harfbuzz-hb-common.html#HB-SCRIPT-OLD-PERMIC:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_PAHAWH_HMONG" link="harfbuzz-hb-common.html#HB-SCRIPT-PAHAWH-HMONG:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_PALMYRENE" link="harfbuzz-hb-common.html#HB-SCRIPT-PALMYRENE:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_PAU_CIN_HAU" link="harfbuzz-hb-common.html#HB-SCRIPT-PAU-CIN-HAU:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_PSALTER_PAHLAVI" link="harfbuzz-hb-common.html#HB-SCRIPT-PSALTER-PAHLAVI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_SIDDHAM" link="harfbuzz-hb-common.html#HB-SCRIPT-SIDDHAM:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_TIRHUTA" link="harfbuzz-hb-common.html#HB-SCRIPT-TIRHUTA:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_WARANG_CITI" link="harfbuzz-hb-common.html#HB-SCRIPT-WARANG-CITI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_AHOM" link="harfbuzz-hb-common.html#HB-SCRIPT-AHOM:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_ANATOLIAN_HIEROGLYPHS" link="harfbuzz-hb-common.html#HB-SCRIPT-ANATOLIAN-HIEROGLYPHS:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_HATRAN" link="harfbuzz-hb-common.html#HB-SCRIPT-HATRAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_MULTANI" link="harfbuzz-hb-common.html#HB-SCRIPT-MULTANI:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_OLD_HUNGARIAN" link="harfbuzz-hb-common.html#HB-SCRIPT-OLD-HUNGARIAN:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_SIGNWRITING" link="harfbuzz-hb-common.html#HB-SCRIPT-SIGNWRITING:CAPS"/>
+ <keyword type="constant" name="HB_SCRIPT_INVALID" link="harfbuzz-hb-common.html#HB-SCRIPT-INVALID:CAPS"/>
+ <keyword type="constant" name="_HB_SCRIPT_MAX_VALUE" link="harfbuzz-hb-common.html#HB-SCRIPT-MAX-VALUE:CAPS"/>
+ <keyword type="constant" name="_HB_SCRIPT_MAX_VALUE_SIGNED" link="harfbuzz-hb-common.html#HB-SCRIPT-MAX-VALUE-SIGNED:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_NOT_REORDERED" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-NOT-REORDERED:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_OVERLAY" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-OVERLAY:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_NUKTA" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-NUKTA:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_KANA_VOICING" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-KANA-VOICING:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_VIRAMA" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-VIRAMA:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC10" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC10:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC11" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC11:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC12" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC12:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC13" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC13:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC14" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC14:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC15" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC15:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC16" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC16:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC17" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC17:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC18" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC18:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC19" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC19:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC20" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC20:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC21" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC21:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC22" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC22:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC23" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC23:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC24" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC24:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC25" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC25:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC26" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC26:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC27" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC27:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC28" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC28:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC29" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC29:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC30" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC30:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC31" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC31:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC32" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC32:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC33" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC33:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC34" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC34:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC35" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC35:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC36" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC36:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC84" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC84:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC91" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC91:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC103" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC103:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC107" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC107:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC118" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC118:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC122" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC122:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC129" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC129:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC130" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC130:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_CCC133" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-CCC133:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_ATTACHED_BELOW_LEFT" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-ATTACHED-BELOW-LEFT:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_ATTACHED_BELOW" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-ATTACHED-BELOW:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_ATTACHED_ABOVE" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-ATTACHED-ABOVE:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_ATTACHED_ABOVE_RIGHT" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-ATTACHED-ABOVE-RIGHT:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_BELOW_LEFT" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-BELOW-LEFT:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_BELOW" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-BELOW:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_BELOW_RIGHT" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-BELOW-RIGHT:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_LEFT" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-LEFT:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_RIGHT" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-RIGHT:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_ABOVE_LEFT" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-ABOVE-LEFT:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_ABOVE" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-ABOVE:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_ABOVE_RIGHT" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-ABOVE-RIGHT:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_DOUBLE_BELOW" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-DOUBLE-BELOW:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_DOUBLE_ABOVE" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-DOUBLE-ABOVE:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_IOTA_SUBSCRIPT" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-IOTA-SUBSCRIPT:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_COMBINING_CLASS_INVALID" link="harfbuzz-hb-unicode.html#HB-UNICODE-COMBINING-CLASS-INVALID:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_CONTROL" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-CONTROL:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_FORMAT" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-FORMAT:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_UNASSIGNED" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-UNASSIGNED:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_PRIVATE_USE" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-PRIVATE-USE:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_SURROGATE" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-SURROGATE:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_LOWERCASE_LETTER" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-LOWERCASE-LETTER:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_MODIFIER_LETTER" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-MODIFIER-LETTER:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_OTHER_LETTER" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-OTHER-LETTER:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_TITLECASE_LETTER" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-TITLECASE-LETTER:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_UPPERCASE_LETTER" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-UPPERCASE-LETTER:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_SPACING_MARK" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-SPACING-MARK:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_ENCLOSING_MARK" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-ENCLOSING-MARK:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_NON_SPACING_MARK" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-NON-SPACING-MARK:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_DECIMAL_NUMBER" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-DECIMAL-NUMBER:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_LETTER_NUMBER" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-LETTER-NUMBER:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_OTHER_NUMBER" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-OTHER-NUMBER:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_CONNECT_PUNCTUATION" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-CONNECT-PUNCTUATION:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_DASH_PUNCTUATION" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-DASH-PUNCTUATION:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_CLOSE_PUNCTUATION" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-CLOSE-PUNCTUATION:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_FINAL_PUNCTUATION" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-FINAL-PUNCTUATION:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_INITIAL_PUNCTUATION" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-INITIAL-PUNCTUATION:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_OTHER_PUNCTUATION" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-OTHER-PUNCTUATION:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_OPEN_PUNCTUATION" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-OPEN-PUNCTUATION:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_CURRENCY_SYMBOL" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-CURRENCY-SYMBOL:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_MODIFIER_SYMBOL" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-MODIFIER-SYMBOL:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_MATH_SYMBOL" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-MATH-SYMBOL:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_OTHER_SYMBOL" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-OTHER-SYMBOL:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_LINE_SEPARATOR" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-LINE-SEPARATOR:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_PARAGRAPH_SEPARATOR" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-PARAGRAPH-SEPARATOR:CAPS"/>
+ <keyword type="constant" name="HB_UNICODE_GENERAL_CATEGORY_SPACE_SEPARATOR" link="harfbuzz-hb-unicode.html#HB-UNICODE-GENERAL-CATEGORY-SPACE-SEPARATOR:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_CONTENT_TYPE_INVALID" link="harfbuzz-Buffers.html#HB-BUFFER-CONTENT-TYPE-INVALID:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_CONTENT_TYPE_UNICODE" link="harfbuzz-Buffers.html#HB-BUFFER-CONTENT-TYPE-UNICODE:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_CONTENT_TYPE_GLYPHS" link="harfbuzz-Buffers.html#HB-BUFFER-CONTENT-TYPE-GLYPHS:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_FLAG_DEFAULT" link="harfbuzz-Buffers.html#HB-BUFFER-FLAG-DEFAULT:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_FLAG_BOT" link="harfbuzz-Buffers.html#HB-BUFFER-FLAG-BOT:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_FLAG_EOT" link="harfbuzz-Buffers.html#HB-BUFFER-FLAG-EOT:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES" link="harfbuzz-Buffers.html#HB-BUFFER-FLAG-PRESERVE-DEFAULT-IGNORABLES:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES" link="harfbuzz-Buffers.html#HB-BUFFER-CLUSTER-LEVEL-MONOTONE-GRAPHEMES:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_CLUSTER_LEVEL_MONOTONE_CHARACTERS" link="harfbuzz-Buffers.html#HB-BUFFER-CLUSTER-LEVEL-MONOTONE-CHARACTERS:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_CLUSTER_LEVEL_CHARACTERS" link="harfbuzz-Buffers.html#HB-BUFFER-CLUSTER-LEVEL-CHARACTERS:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_CLUSTER_LEVEL_DEFAULT" link="harfbuzz-Buffers.html#HB-BUFFER-CLUSTER-LEVEL-DEFAULT:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_SERIALIZE_FORMAT_TEXT" link="harfbuzz-Buffers.html#HB-BUFFER-SERIALIZE-FORMAT-TEXT:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_SERIALIZE_FORMAT_JSON" link="harfbuzz-Buffers.html#HB-BUFFER-SERIALIZE-FORMAT-JSON:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_SERIALIZE_FORMAT_INVALID" link="harfbuzz-Buffers.html#HB-BUFFER-SERIALIZE-FORMAT-INVALID:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_SERIALIZE_FLAG_DEFAULT" link="harfbuzz-Buffers.html#HB-BUFFER-SERIALIZE-FLAG-DEFAULT:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_SERIALIZE_FLAG_NO_CLUSTERS" link="harfbuzz-Buffers.html#HB-BUFFER-SERIALIZE-FLAG-NO-CLUSTERS:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_SERIALIZE_FLAG_NO_POSITIONS" link="harfbuzz-Buffers.html#HB-BUFFER-SERIALIZE-FLAG-NO-POSITIONS:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES" link="harfbuzz-Buffers.html#HB-BUFFER-SERIALIZE-FLAG-NO-GLYPH-NAMES:CAPS"/>
+ <keyword type="constant" name="HB_BUFFER_SERIALIZE_FLAG_GLYPH_EXTENTS" link="harfbuzz-Buffers.html#HB-BUFFER-SERIALIZE-FLAG-GLYPH-EXTENTS:CAPS"/>
+ <keyword type="constant" name="HB_MEMORY_MODE_DUPLICATE" link="harfbuzz-hb-blob.html#HB-MEMORY-MODE-DUPLICATE:CAPS"/>
+ <keyword type="constant" name="HB_MEMORY_MODE_READONLY" link="harfbuzz-hb-blob.html#HB-MEMORY-MODE-READONLY:CAPS"/>
+ <keyword type="constant" name="HB_MEMORY_MODE_WRITABLE" link="harfbuzz-hb-blob.html#HB-MEMORY-MODE-WRITABLE:CAPS"/>
+ <keyword type="constant" name="HB_MEMORY_MODE_READONLY_MAY_MAKE_WRITABLE" link="harfbuzz-hb-blob.html#HB-MEMORY-MODE-READONLY-MAY-MAKE-WRITABLE:CAPS"/>
+ <keyword type="constant" name="HB_OT_LAYOUT_GLYPH_CLASS_UNCLASSIFIED" link="harfbuzz-hb-ot-layout.html#HB-OT-LAYOUT-GLYPH-CLASS-UNCLASSIFIED:CAPS"/>
+ <keyword type="constant" name="HB_OT_LAYOUT_GLYPH_CLASS_BASE_GLYPH" link="harfbuzz-hb-ot-layout.html#HB-OT-LAYOUT-GLYPH-CLASS-BASE-GLYPH:CAPS"/>
+ <keyword type="constant" name="HB_OT_LAYOUT_GLYPH_CLASS_LIGATURE" link="harfbuzz-hb-ot-layout.html#HB-OT-LAYOUT-GLYPH-CLASS-LIGATURE:CAPS"/>
+ <keyword type="constant" name="HB_OT_LAYOUT_GLYPH_CLASS_MARK" link="harfbuzz-hb-ot-layout.html#HB-OT-LAYOUT-GLYPH-CLASS-MARK:CAPS"/>
+ <keyword type="constant" name="HB_OT_LAYOUT_GLYPH_CLASS_COMPONENT" link="harfbuzz-hb-ot-layout.html#HB-OT-LAYOUT-GLYPH-CLASS-COMPONENT:CAPS"/>
+ <keyword type="member" name="hb-glyph-info-t-struct.codepoint" link="harfbuzz-Buffers.html#hb-glyph-info-t-struct.codepoint"/>
+ <keyword type="member" name="hb-glyph-info-t-struct.mask" link="harfbuzz-Buffers.html#hb-glyph-info-t-struct.mask"/>
+ <keyword type="member" name="hb-glyph-info-t-struct.cluster" link="harfbuzz-Buffers.html#hb-glyph-info-t-struct.cluster"/>
+ <keyword type="member" name="hb-glyph-position-t-struct.x-advance" link="harfbuzz-Buffers.html#hb-glyph-position-t-struct.x-advance"/>
+ <keyword type="member" name="hb-glyph-position-t-struct.y-advance" link="harfbuzz-Buffers.html#hb-glyph-position-t-struct.y-advance"/>
+ <keyword type="member" name="hb-glyph-position-t-struct.x-offset" link="harfbuzz-Buffers.html#hb-glyph-position-t-struct.x-offset"/>
+ <keyword type="member" name="hb-glyph-position-t-struct.y-offset" link="harfbuzz-Buffers.html#hb-glyph-position-t-struct.y-offset"/>
+ <keyword type="member" name="hb-segment-properties-t-struct.direction" link="harfbuzz-Buffers.html#hb-segment-properties-t-struct.direction"/>
+ <keyword type="member" name="hb-segment-properties-t-struct.script" link="harfbuzz-Buffers.html#hb-segment-properties-t-struct.script"/>
+ <keyword type="member" name="hb-segment-properties-t-struct.language" link="harfbuzz-Buffers.html#hb-segment-properties-t-struct.language"/>
+ </functions>
+</book>
diff --git a/docs/html/hello-harfbuzz.html b/docs/html/hello-harfbuzz.html
new file mode 100644
index 0000000..c665efc
--- /dev/null
+++ b/docs/html/hello-harfbuzz.html
@@ -0,0 +1,181 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Hello, Harfbuzz: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt01.html" title="Part I. User's manual">
+<link rel="prev" href="building.html" title="Building">
+<link rel="next" href="buffers-language-script-and-direction.html" title="Buffers, language, script and direction">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="building.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="buffers-language-script-and-direction.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="hello-harfbuzz"></a>Hello, Harfbuzz</h2></div></div></div>
+<div class="toc"><dl class="toc"><dt><span class="section"><a href="hello-harfbuzz.html#what-harfbuzz-doesnt-do">What Harfbuzz doesn't do</a></span></dt></dl></div>
+<p>
+ Here's the simplest Harfbuzz that can possibly work. We will improve
+ it later.
+ </p>
+<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
+ Create a buffer and put your text in it.
+ </p></li></ol></div>
+<pre class="programlisting">
+ #include &lt;hb.h&gt;
+ hb_buffer_t *buf;
+ buf = hb_buffer_create();
+ hb_buffer_add_utf8(buf, text, strlen(text), 0, strlen(text));
+</pre>
+<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem" value="2"><p>
+ Guess the script, language and direction of the buffer.
+ </p></li></ol></div>
+<pre class="programlisting">
+ hb_buffer_guess_segment_properties(buf);
+</pre>
+<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem" value="3"><p>
+ Create a face and a font, using FreeType for now.
+ </p></li></ol></div>
+<pre class="programlisting">
+ #include &lt;hb-ft.h&gt;
+ FT_New_Face(ft_library, font_path, index, &amp;face)
+ hb_font_t *font = hb_ft_font_create(face);
+</pre>
+<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem" value="4"><p>
+ Shape!
+ </p></li></ol></div>
+<pre class="programlisting">
+ hb_shape(font, buf, NULL, 0);
+</pre>
+<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem" value="5"><p>
+ Get the glyph and position information.
+ </p></li></ol></div>
+<pre class="programlisting">
+ hb_glyph_info_t *glyph_info = hb_buffer_get_glyph_infos(buf, &amp;glyph_count);
+ hb_glyph_position_t *glyph_pos = hb_buffer_get_glyph_positions(buf, &amp;glyph_count);
+</pre>
+<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem" value="6"><p>
+ Iterate over each glyph.
+ </p></li></ol></div>
+<pre class="programlisting">
+ for (i = 0; i &lt; glyph_count; ++i) {
+ glyphid = glyph_info[i].codepoint;
+ x_offset = glyph_pos[i].x_offset / 64.0;
+ y_offset = glyph_pos[i].y_offset / 64.0;
+ x_advance = glyph_pos[i].x_advance / 64.0;
+ y_advance = glyph_pos[i].y_advance / 64.0;
+ draw_glyph(glyphid, cursor_x + x_offset, cursor_y + y_offset);
+ cursor_x += x_advance;
+ cursor_y += y_advance;
+ }
+</pre>
+<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem" value="7"><p>
+ Tidy up.
+ </p></li></ol></div>
+<pre class="programlisting">
+ hb_buffer_destroy(buf);
+ hb_font_destroy(hb_ft_font);
+</pre>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="what-harfbuzz-doesnt-do"></a>What Harfbuzz doesn't do</h2></div></div></div>
+<p>
+ The code above will take a UTF8 string, shape it, and give you the
+ information required to lay it out correctly on a single
+ horizontal (or vertical) line using the font provided. That is the
+ extent of Harfbuzz's responsibility.
+ </p>
+<p>
+ If you are implementing a text layout engine you may have other
+ responsibilities, that Harfbuzz will not help you with:
+ </p>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem">
+<p>
+ Harfbuzz won't help you with bidirectionality. If you want to
+ lay out text with mixed Hebrew and English, you will need to
+ ensure that the buffer provided to Harfbuzz has those
+ characters in the correct layout order. This will be different
+ from the logical order in which the Unicode text is stored. In
+ other words, the user will hit the keys in the following
+ sequence:
+ </p>
+<pre class="programlisting">
+A B C [space] ג ב א [space] D E F
+ </pre>
+<p>
+ but will expect to see in the output:
+ </p>
+<pre class="programlisting">
+ABC אבג DEF
+ </pre>
+<p>
+ This reordering is called <span class="emphasis"><em>bidi processing</em></span>
+ ("bidi" is short for bidirectional), and there's an
+ algorithm as an annex to the Unicode Standard which tells you how
+ to reorder a string from logical order into presentation order.
+ Before sending your string to Harfbuzz, you may need to apply the
+ bidi algorithm to it. Libraries such as ICU and fribidi can do
+ this for you.
+ </p>
+</li>
+<li class="listitem"><p>
+ Harfbuzz won't help you with text that contains different font
+ properties. For instance, if you have the string "a
+ <span class="emphasis"><em>huge</em></span> breakfast", and you expect
+ "huge" to be italic, you will need to send three
+ strings to Harfbuzz: <code class="literal">a</code>, in your Roman font;
+ <code class="literal">huge</code> using your italic font; and
+ <code class="literal">breakfast</code> using your Roman font again.
+ Similarly if you change font, font size, script, language or
+ direction within your string, you will need to shape each run
+ independently and then output them independently. Harfbuzz
+ expects to shape a run of characters sharing the same
+ properties.
+ </p></li>
+<li class="listitem">
+<p>
+ Harfbuzz won't help you with line breaking, hyphenation or
+ justification. As mentioned above, it lays out the string
+ along a <span class="emphasis"><em>single line</em></span> of, notionally,
+ infinite length. If you want to find out where the potential
+ word, sentence and line break points are in your text, you
+ could use the ICU library's break iterator functions.
+ </p>
+<p>
+ Harfbuzz can tell you how wide a shaped piece of text is, which is
+ useful input to a justification algorithm, but it knows nothing
+ about paragraphs, lines or line lengths. Nor will it adjust the
+ space between words to fit them proportionally into a line. If you
+ want to layout text in paragraphs, you will probably want to send
+ each word of your text to Harfbuzz to determine its shaped width
+ after glyph substitutions, then work out how many words will fit
+ on a line, and then finally output each word of the line separated
+ by a space of the correct size to fully justify the paragraph.
+ </p>
+</li>
+</ul></div>
+<p>
+ As a layout engine implementor, Harfbuzz will help you with the
+ interface between your text and your font, and that's something
+ that you'll need - what you then do with the glyphs that your font
+ returns is up to you. The example we saw above enough to get us
+ started using Harfbuzz. Now we are going to use the remainder of
+ Harfbuzz's API to refine that example and improve our text shaping
+ capabilities.
+ </p>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/reference/html/home.png b/docs/html/home.png
index 9346b33..9346b33 100644
--- a/docs/reference/html/home.png
+++ b/docs/html/home.png
Binary files differ
diff --git a/docs/html/index.html b/docs/html/index.html
new file mode 100644
index 0000000..fbf4dcd
--- /dev/null
+++ b/docs/html/index.html
@@ -0,0 +1,190 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>HarfBuzz Manual: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<meta name="description" content="HarfBuzz HarfBuzz is an OpenType text shaping engine. The current HarfBuzz codebase, formerly known as harfbuzz-ng, is versioned 1.x.x and is stable and under active maintenance. This is what is used in latest versions of Firefox, GNOME, ChromeOS, Chrome, LibreOffice, XeTeX, Android, and KDE, among other places. The canonical source tree is available here. Also available on github. See for release tarballs. The old HarfBuzz codebase, these days known as harfbuzz-old, was derived from FreeType, Pango, and Qt and is available here. It is not actively developed or maintained, and is extremely buggy. All users are encouraged to switch over to the new HarfBuzz as soon as possible. There are no release tarballs of old HarfBuzz whatsoever.">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="next" href="pt01.html" title="Part I. User's manual">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<div class="book">
+<div class="titlepage">
+<div>
+<div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">HarfBuzz Manual</p></th></tr></table></div>
+<div><div class="abstract">
+<p class="title"><b>HarfBuzz</b></p>
+<div align="center"><img src="HarfBuzz.png" align="middle"></div>
+<p>
+ HarfBuzz is an <a class="ulink" href="http://www.microsoft.com/typography/otspec/" target="_top">OpenType</a>
+ text shaping engine.
+ </p>
+<p>
+ The current HarfBuzz codebase, formerly known as harfbuzz-ng, is
+ versioned 1.x.x and is stable and under active maintenance. This is
+ what is used in latest versions of Firefox, GNOME, ChromeOS, Chrome,
+ LibreOffice, XeTeX, Android, and KDE, among other places. The canonical
+ source tree is available
+ <a class="ulink" href="http://cgit.freedesktop.org/harfbuzz/" target="_top">here</a>.
+ Also available on
+ <a class="ulink" href="https://github.com/behdad/harfbuzz" target="_top">github</a>.
+ See <a class="xref" href="install-harfbuzz.html#download" title="Download">Download</a> for release tarballs.
+ </p>
+<p>
+ The old HarfBuzz codebase, these days known as harfbuzz-old, was
+ derived from <a class="ulink" href="http://freetype.org/" target="_top">FreeType</a>,
+ <a class="ulink" href="http://pango.org/" target="_top">Pango</a>, and
+ <a class="ulink" href="http://qt-project.org/" target="_top">Qt</a> and is available
+ <a class="ulink" href="http://cgit.freedesktop.org/harfbuzz.old/" target="_top">here</a>.
+ It is not actively developed or maintained, and is extremely buggy. All
+ users are encouraged to switch over to the new HarfBuzz as soon as
+ possible. There are no release tarballs of old HarfBuzz whatsoever.
+ </p>
+</div></div>
+</div>
+<hr>
+</div>
+<div class="toc"><dl class="toc">
+<dt><span class="part"><a href="pt01.html">I. User's manual</a></span></dt>
+<dd><dl>
+<dt><span class="chapter"><a href="what-is-harfbuzz.html">What is Harfbuzz?</a></span></dt>
+<dd><dl>
+<dt><span class="section"><a href="what-is-harfbuzz.html#why-do-i-need-it">Why do I need it?</a></span></dt>
+<dt><span class="section"><a href="why-is-it-called-harfbuzz.html">Why is it called Harfbuzz?</a></span></dt>
+</dl></dd>
+<dt><span class="chapter"><a href="install-harfbuzz.html">Install Harfbuzz</a></span></dt>
+<dd><dl>
+<dt><span class="section"><a href="install-harfbuzz.html#download">Download</a></span></dt>
+<dt><span class="section"><a href="building.html">Building</a></span></dt>
+</dl></dd>
+<dt><span class="chapter"><a href="hello-harfbuzz.html">Hello, Harfbuzz</a></span></dt>
+<dd><dl><dt><span class="section"><a href="hello-harfbuzz.html#what-harfbuzz-doesnt-do">What Harfbuzz doesn't do</a></span></dt></dl></dd>
+<dt><span class="chapter"><a href="buffers-language-script-and-direction.html">Buffers, language, script and direction</a></span></dt>
+<dd><dl>
+<dt><span class="section"><a href="buffers-language-script-and-direction.html#creating-and-destroying-buffers">Creating and destroying buffers</a></span></dt>
+<dt><span class="section"><a href="adding-text-to-the-buffer.html">Adding text to the buffer</a></span></dt>
+<dt><span class="section"><a href="setting-buffer-properties.html">Setting buffer properties</a></span></dt>
+<dt><span class="section"><a href="what-about-the-other-scripts.html">What about the other scripts?</a></span></dt>
+<dt><span class="section"><a href="customizing-unicode-functions.html">Customizing Unicode functions</a></span></dt>
+</dl></dd>
+<dt><span class="chapter"><a href="fonts-and-faces.html">Fonts and faces</a></span></dt>
+<dd><dl>
+<dt><span class="section"><a href="fonts-and-faces.html#using-freetype">Using FreeType</a></span></dt>
+<dt><span class="section"><a href="using-harfbuzzs-native-opentype-implementation.html">Using Harfbuzz's native OpenType implementation</a></span></dt>
+<dt><span class="section"><a href="using-your-own-font-functions.html">Using your own font functions</a></span></dt>
+</dl></dd>
+<dt><span class="chapter"><a href="shaping-and-shape-plans.html">Shaping and shape plans</a></span></dt>
+<dd><dl>
+<dt><span class="section"><a href="shaping-and-shape-plans.html#opentype-features">OpenType features</a></span></dt>
+<dt><span class="section"><a href="plans-and-caching.html">Plans and caching</a></span></dt>
+</dl></dd>
+</dl></dd>
+<dt><span class="part"><a href="pt02.html">II. Reference manual</a></span></dt>
+<dd><dl>
+<dt><span class="chapter"><a href="ch07.html">Harfbuzz API</a></span></dt>
+<dd><dl>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb.html">hb</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-common.html">hb-common</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-unicode.html">hb-unicode</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-Buffers.html">Buffers</a></span><span class="refpurpose"> — Input and output buffers</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-blob.html">hb-blob</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-face.html">hb-face</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-font.html">hb-font</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-Shaping.html">Shaping</a></span><span class="refpurpose"> — Conversion of text strings into positioned glyphs</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-version.html">hb-version</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-deprecated.html">hb-deprecated</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-set.html">hb-set</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-ot.html">hb-ot</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-ot-layout.html">hb-ot-layout</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-ot-tag.html">hb-ot-tag</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-ot-font.html">hb-ot-font</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-ot-shape.html">hb-ot-shape</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-shape-plan.html">hb-shape-plan</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-glib.html">hb-glib</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-icu.html">hb-icu</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-ft.html">hb-ft</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-graphite2.html">hb-graphite2</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-uniscribe.html">hb-uniscribe</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-coretext.html">hb-coretext</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-gobject.html">hb-gobject</a></span><span class="refpurpose"></span>
+</dt>
+</dl></dd>
+<dt><span class="chapter"><a href="object-tree.html">Object Hierarchy</a></span></dt>
+<dt><span class="index"><a href="api-index-full.html">API Index</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-2.html">Index of new symbols in 0.9.2</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-5.html">Index of new symbols in 0.9.5</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-7.html">Index of new symbols in 0.9.7</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-8.html">Index of new symbols in 0.9.8</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-10.html">Index of new symbols in 0.9.10</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-11.html">Index of new symbols in 0.9.11</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-20.html">Index of new symbols in 0.9.20</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-22.html">Index of new symbols in 0.9.22</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-28.html">Index of new symbols in 0.9.28</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-30.html">Index of new symbols in 0.9.30</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-31.html">Index of new symbols in 0.9.31</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-38.html">Index of new symbols in 0.9.38</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-39.html">Index of new symbols in 0.9.39</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-41.html">Index of new symbols in 0.9.41</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-42.html">Index of new symbols in 0.9.42</a></span></dt>
+<dt><span class="index"><a href="api-index-1-0-5.html">Index of new symbols in 1.0.5</a></span></dt>
+<dt><span class="index"><a href="api-index-1-1-2.html">Index of new symbols in 1.1.2</a></span></dt>
+<dt><span class="index"><a href="api-index-1-1-3.html">Index of new symbols in 1.1.3</a></span></dt>
+<dt><span class="index"><a href="deprecated-api-index.html">Index of deprecated API</a></span></dt>
+<dt><span class="glossary"><a href="annotation-glossary.html">Annotation Glossary</a></span></dt>
+</dl></dd>
+</dl></div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/install-harfbuzz.html b/docs/html/install-harfbuzz.html
new file mode 100644
index 0000000..10017eb
--- /dev/null
+++ b/docs/html/install-harfbuzz.html
@@ -0,0 +1,59 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Install Harfbuzz: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt01.html" title="Part I. User's manual">
+<link rel="prev" href="why-is-it-called-harfbuzz.html" title="Why is it called Harfbuzz?">
+<link rel="next" href="building.html" title="Building">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="why-is-it-called-harfbuzz.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="building.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="install-harfbuzz"></a>Install Harfbuzz</h2></div></div></div>
+<div class="toc"><dl class="toc">
+<dt><span class="section"><a href="install-harfbuzz.html#download">Download</a></span></dt>
+<dt><span class="section"><a href="building.html">Building</a></span></dt>
+</dl></div>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="download"></a>Download</h2></div></div></div>
+<p>
+ For tarball releases of HarfBuzz, look
+ <a class="ulink" href="http://www.freedesktop.org/software/harfbuzz/release/" target="_top">here</a>.
+ At the same place you will
+ also find Win32 binary bundles that include libharfbuzz DLL, hb-view.exe,
+ hb-shape.exe, and all dependencies.
+ </p>
+<p>
+ The canonical source tree is available
+ <a class="ulink" href="http://cgit.freedesktop.org/harfbuzz/" target="_top">here</a>.
+ Also available on <a class="ulink" href="https://github.com/behdad/harfbuzz" target="_top">github</a>.
+ </p>
+<p>
+ The API that comes with <code class="filename">hb.h</code> will
+ not change incompatibly. Other, peripheral, headers are more likely to go
+ through minor modifications, but again, will do our best to never change
+ API in an incompatible way. We will never break the ABI.
+ </p>
+<p>
+ If you are not sure whether Pango or HarfBuzz is right for you, read
+ <a class="ulink" href="http://mces.blogspot.in/2009/11/pango-vs-harfbuzz.html" target="_top">this</a>.
+ </p>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/reference/html/left-insensitive.png b/docs/html/left-insensitive.png
index 3269393..3269393 100644
--- a/docs/reference/html/left-insensitive.png
+++ b/docs/html/left-insensitive.png
Binary files differ
diff --git a/docs/reference/html/left.png b/docs/html/left.png
index 2abde03..2abde03 100644
--- a/docs/reference/html/left.png
+++ b/docs/html/left.png
Binary files differ
diff --git a/docs/reference/html/object-tree.html b/docs/html/object-tree.html
index c4f447b..0dff3cc 100644
--- a/docs/reference/html/object-tree.html
+++ b/docs/html/object-tree.html
@@ -2,20 +2,20 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Object Hierarchy</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="index.html" title="HarfBuzz Reference Manual">
+<title>Object Hierarchy: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt02.html" title="Part II. Reference manual">
<link rel="prev" href="harfbuzz-hb-gobject.html" title="hb-gobject">
<link rel="next" href="api-index-full.html" title="API Index">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts"></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
+<td><a accesskey="u" href="pt02.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb-gobject.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="api-index-full.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
@@ -23,37 +23,36 @@
<div class="titlepage"><div><div><h2 class="title">
<a name="object-tree"></a>Object Hierarchy</h2></div></div></div>
<pre class="screen">
- GBoxed
+ <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html">GBoxed</a>
<span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-blob.html#hb-blob-t">hb_blob_t</a>
- <span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t">hb_buffer_t</a>
+ <span class="lineart">├──</span> <a class="link" href="harfbuzz-Buffers.html#hb-buffer-t">hb_buffer_t</a>
<span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-face.html#hb-face-t">hb_face_t</a>
- <span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-shape.html#hb-feature-t">hb_feature_t</a>
+ <span class="lineart">├──</span> <a class="link" href="harfbuzz-Shaping.html#hb-feature-t">hb_feature_t</a>
<span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t">hb_font_funcs_t</a>
<span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-font.html#hb-font-t">hb_font_t</a>
- <span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-buffer.html#hb-glyph-info-t">hb_glyph_info_t</a>
- <span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-buffer.html#hb-glyph-position-t">hb_glyph_position_t</a>
- <span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-common.html#hb-language-t">hb_language_t</a>
- <span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-buffer.html#hb-segment-properties-t">hb_segment_properties_t</a>
+ <span class="lineart">├──</span> <a class="link" href="harfbuzz-Buffers.html#hb-glyph-info-t">hb_glyph_info_t</a>
+ <span class="lineart">├──</span> <a class="link" href="harfbuzz-Buffers.html#hb-glyph-position-t">hb_glyph_position_t</a>
+ <span class="lineart">├──</span> <a class="link" href="harfbuzz-Buffers.html#hb-segment-properties-t">hb_segment_properties_t</a>
<span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-set.html#hb-set-t">hb_set_t</a>
<span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-shape-plan.html#hb-shape-plan-t">hb_shape_plan_t</a>
<span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t">hb_unicode_funcs_t</a>
<span class="lineart">╰──</span> <a class="link" href="harfbuzz-hb-common.html#hb-user-data-key-t">hb_user_data_key_t</a>
- GEnum
- <span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-content-type-t" title="enum hb_buffer_content_type_t">hb_buffer_content_type_t</a>
- <span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t">hb_buffer_serialize_format_t</a>
+ <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a>
+ <span class="lineart">├──</span> <a class="link" href="harfbuzz-Buffers.html#hb-buffer-cluster-level-t" title="enum hb_buffer_cluster_level_t">hb_buffer_cluster_level_t</a>
+ <span class="lineart">├──</span> <a class="link" href="harfbuzz-Buffers.html#hb-buffer-content-type-t" title="enum hb_buffer_content_type_t">hb_buffer_content_type_t</a>
+ <span class="lineart">├──</span> <a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t">hb_buffer_serialize_format_t</a>
<span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-common.html#hb-direction-t" title="enum hb_direction_t">hb_direction_t</a>
<span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-blob.html#hb-memory-mode-t" title="enum hb_memory_mode_t">hb_memory_mode_t</a>
<span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-layout-glyph-class-t" title="enum hb_ot_layout_glyph_class_t">hb_ot_layout_glyph_class_t</a>
<span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t">hb_script_t</a>
<span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-combining-class-t" title="enum hb_unicode_combining_class_t">hb_unicode_combining_class_t</a>
<span class="lineart">╰──</span> <a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-general-category-t" title="enum hb_unicode_general_category_t">hb_unicode_general_category_t</a>
- GFlags
- <span class="lineart">├──</span> <a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-flags-t" title="enum hb_buffer_flags_t">hb_buffer_flags_t</a>
- <span class="lineart">╰──</span> <a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-flags-t" title="enum hb_buffer_serialize_flags_t">hb_buffer_serialize_flags_t</a>
+ <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GFlags</a>
+ <span class="lineart">├──</span> <a class="link" href="harfbuzz-Buffers.html#hb-buffer-flags-t" title="enum hb_buffer_flags_t">hb_buffer_flags_t</a>
+ <span class="lineart">╰──</span> <a class="link" href="harfbuzz-Buffers.html#hb-buffer-serialize-flags-t" title="enum hb_buffer_serialize_flags_t">hb_buffer_serialize_flags_t</a>
</pre>
</div>
<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
+<hr>Generated by GTK-Doc V1.24.1</div>
</body>
</html> \ No newline at end of file
diff --git a/docs/html/plans-and-caching.html b/docs/html/plans-and-caching.html
new file mode 100644
index 0000000..8ab4e97
--- /dev/null
+++ b/docs/html/plans-and-caching.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Plans and caching: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="shaping-and-shape-plans.html" title="Shaping and shape plans">
+<link rel="prev" href="shaping-and-shape-plans.html" title="Shaping and shape plans">
+<link rel="next" href="pt02.html" title="Part II. Reference manual">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="shaping-and-shape-plans.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="shaping-and-shape-plans.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="pt02.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="plans-and-caching"></a>Plans and caching</h2></div></div></div>
+<p>
+ </p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/pt01.html b/docs/html/pt01.html
new file mode 100644
index 0000000..e49ad58
--- /dev/null
+++ b/docs/html/pt01.html
@@ -0,0 +1,75 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Part I. User's manual: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="index.html" title="HarfBuzz Manual">
+<link rel="prev" href="index.html" title="HarfBuzz Manual">
+<link rel="next" href="what-is-harfbuzz.html" title="What is Harfbuzz?">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
+<td><a accesskey="p" href="index.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="what-is-harfbuzz.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="part">
+<div class="titlepage"><div><div><h1 class="title">
+<a name="id-1.2"></a>Part I. User's manual</h1></div></div></div>
+<div class="toc">
+<p><b>Table of Contents</b></p>
+<dl class="toc">
+<dt><span class="chapter"><a href="what-is-harfbuzz.html">What is Harfbuzz?</a></span></dt>
+<dd><dl>
+<dt><span class="section"><a href="what-is-harfbuzz.html#why-do-i-need-it">Why do I need it?</a></span></dt>
+<dt><span class="section"><a href="why-is-it-called-harfbuzz.html">Why is it called Harfbuzz?</a></span></dt>
+</dl></dd>
+<dt><span class="chapter"><a href="install-harfbuzz.html">Install Harfbuzz</a></span></dt>
+<dd><dl>
+<dt><span class="section"><a href="install-harfbuzz.html#download">Download</a></span></dt>
+<dt><span class="section"><a href="building.html">Building</a></span></dt>
+</dl></dd>
+<dt><span class="chapter"><a href="hello-harfbuzz.html">Hello, Harfbuzz</a></span></dt>
+<dd><dl><dt><span class="section"><a href="hello-harfbuzz.html#what-harfbuzz-doesnt-do">What Harfbuzz doesn't do</a></span></dt></dl></dd>
+<dt><span class="chapter"><a href="buffers-language-script-and-direction.html">Buffers, language, script and direction</a></span></dt>
+<dd><dl>
+<dt><span class="section"><a href="buffers-language-script-and-direction.html#creating-and-destroying-buffers">Creating and destroying buffers</a></span></dt>
+<dt><span class="section"><a href="adding-text-to-the-buffer.html">Adding text to the buffer</a></span></dt>
+<dt><span class="section"><a href="setting-buffer-properties.html">Setting buffer properties</a></span></dt>
+<dt><span class="section"><a href="what-about-the-other-scripts.html">What about the other scripts?</a></span></dt>
+<dt><span class="section"><a href="customizing-unicode-functions.html">Customizing Unicode functions</a></span></dt>
+</dl></dd>
+<dt><span class="chapter"><a href="fonts-and-faces.html">Fonts and faces</a></span></dt>
+<dd><dl>
+<dt><span class="section"><a href="fonts-and-faces.html#using-freetype">Using FreeType</a></span></dt>
+<dt><span class="section"><a href="using-harfbuzzs-native-opentype-implementation.html">Using Harfbuzz's native OpenType implementation</a></span></dt>
+<dt><span class="section"><a href="using-your-own-font-functions.html">Using your own font functions</a></span></dt>
+</dl></dd>
+<dt><span class="chapter"><a href="shaping-and-shape-plans.html">Shaping and shape plans</a></span></dt>
+<dd><dl>
+<dt><span class="section"><a href="shaping-and-shape-plans.html#opentype-features">OpenType features</a></span></dt>
+<dt><span class="section"><a href="plans-and-caching.html">Plans and caching</a></span></dt>
+</dl></dd>
+</dl>
+</div>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="glyph-information"></a>Glyph information</h2></div></div></div>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="names-and-numbers"></a>Names and numbers</h3></div></div></div>
+<p>
+ </p>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/pt02.html b/docs/html/pt02.html
new file mode 100644
index 0000000..f5580c5
--- /dev/null
+++ b/docs/html/pt02.html
@@ -0,0 +1,138 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Part II. Reference manual: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="index.html" title="HarfBuzz Manual">
+<link rel="prev" href="plans-and-caching.html" title="Plans and caching">
+<link rel="next" href="ch07.html" title="Harfbuzz API">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
+<td><a accesskey="p" href="plans-and-caching.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="ch07.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="part">
+<div class="titlepage"><div>
+<div><h1 class="title">
+<a name="id-1.3"></a>Part II. Reference manual</h1></div>
+<div><p class="releaseinfo">
+ This document is for HarfBuzz 1.2.7
+.
+
+ </p></div>
+</div></div>
+<div class="toc">
+<p><b>Table of Contents</b></p>
+<dl class="toc">
+<dt><span class="chapter"><a href="ch07.html">Harfbuzz API</a></span></dt>
+<dd><dl>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb.html">hb</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-common.html">hb-common</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-unicode.html">hb-unicode</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-Buffers.html">Buffers</a></span><span class="refpurpose"> — Input and output buffers</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-blob.html">hb-blob</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-face.html">hb-face</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-font.html">hb-font</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-Shaping.html">Shaping</a></span><span class="refpurpose"> — Conversion of text strings into positioned glyphs</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-version.html">hb-version</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-deprecated.html">hb-deprecated</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-set.html">hb-set</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-ot.html">hb-ot</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-ot-layout.html">hb-ot-layout</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-ot-tag.html">hb-ot-tag</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-ot-font.html">hb-ot-font</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-ot-shape.html">hb-ot-shape</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-shape-plan.html">hb-shape-plan</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-glib.html">hb-glib</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-icu.html">hb-icu</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-ft.html">hb-ft</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-graphite2.html">hb-graphite2</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-uniscribe.html">hb-uniscribe</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-coretext.html">hb-coretext</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="harfbuzz-hb-gobject.html">hb-gobject</a></span><span class="refpurpose"></span>
+</dt>
+</dl></dd>
+<dt><span class="chapter"><a href="object-tree.html">Object Hierarchy</a></span></dt>
+<dt><span class="index"><a href="api-index-full.html">API Index</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-2.html">Index of new symbols in 0.9.2</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-5.html">Index of new symbols in 0.9.5</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-7.html">Index of new symbols in 0.9.7</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-8.html">Index of new symbols in 0.9.8</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-10.html">Index of new symbols in 0.9.10</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-11.html">Index of new symbols in 0.9.11</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-20.html">Index of new symbols in 0.9.20</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-22.html">Index of new symbols in 0.9.22</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-28.html">Index of new symbols in 0.9.28</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-30.html">Index of new symbols in 0.9.30</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-31.html">Index of new symbols in 0.9.31</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-38.html">Index of new symbols in 0.9.38</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-39.html">Index of new symbols in 0.9.39</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-41.html">Index of new symbols in 0.9.41</a></span></dt>
+<dt><span class="index"><a href="api-index-0-9-42.html">Index of new symbols in 0.9.42</a></span></dt>
+<dt><span class="index"><a href="api-index-1-0-5.html">Index of new symbols in 1.0.5</a></span></dt>
+<dt><span class="index"><a href="api-index-1-1-2.html">Index of new symbols in 1.1.2</a></span></dt>
+<dt><span class="index"><a href="api-index-1-1-3.html">Index of new symbols in 1.1.3</a></span></dt>
+<dt><span class="index"><a href="deprecated-api-index.html">Index of deprecated API</a></span></dt>
+<dt><span class="glossary"><a href="annotation-glossary.html">Annotation Glossary</a></span></dt>
+</dl>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/reference/html/right-insensitive.png b/docs/html/right-insensitive.png
index 4c95785..4c95785 100644
--- a/docs/reference/html/right-insensitive.png
+++ b/docs/html/right-insensitive.png
Binary files differ
diff --git a/docs/reference/html/right.png b/docs/html/right.png
index 76260ec..76260ec 100644
--- a/docs/reference/html/right.png
+++ b/docs/html/right.png
Binary files differ
diff --git a/docs/html/setting-buffer-properties.html b/docs/html/setting-buffer-properties.html
new file mode 100644
index 0000000..0c1cc60
--- /dev/null
+++ b/docs/html/setting-buffer-properties.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Setting buffer properties: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="buffers-language-script-and-direction.html" title="Buffers, language, script and direction">
+<link rel="prev" href="adding-text-to-the-buffer.html" title="Adding text to the buffer">
+<link rel="next" href="what-about-the-other-scripts.html" title="What about the other scripts?">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="buffers-language-script-and-direction.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="adding-text-to-the-buffer.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="what-about-the-other-scripts.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="setting-buffer-properties"></a>Setting buffer properties</h2></div></div></div>
+<p>
+ </p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/shaping-and-shape-plans.html b/docs/html/shaping-and-shape-plans.html
new file mode 100644
index 0000000..04bffbb
--- /dev/null
+++ b/docs/html/shaping-and-shape-plans.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Shaping and shape plans: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt01.html" title="Part I. User's manual">
+<link rel="prev" href="using-your-own-font-functions.html" title="Using your own font functions">
+<link rel="next" href="plans-and-caching.html" title="Plans and caching">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="using-your-own-font-functions.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="plans-and-caching.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="shaping-and-shape-plans"></a>Shaping and shape plans</h2></div></div></div>
+<div class="toc"><dl class="toc">
+<dt><span class="section"><a href="shaping-and-shape-plans.html#opentype-features">OpenType features</a></span></dt>
+<dt><span class="section"><a href="plans-and-caching.html">Plans and caching</a></span></dt>
+</dl></div>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="opentype-features"></a>OpenType features</h2></div></div></div>
+<p>
+ </p>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/reference/html/style.css b/docs/html/style.css
index c141ddd..3675420 100644
--- a/docs/reference/html/style.css
+++ b/docs/html/style.css
@@ -60,7 +60,7 @@ a:hover
div.informaltable table
{
border-collapse: separate;
- border-spacing: 1em 0.5em;
+ border-spacing: 1em 0.3em;
border: none;
}
@@ -148,6 +148,8 @@ div.table table th
h4
{
color: #555753;
+ margin-top: 1em;
+ margin-bottom: 1em;
}
hr
@@ -166,17 +168,16 @@ dl.toc dt
padding-bottom: 0.25em;
}
-dl.toc > dd > dl > dt
+dl.toc > dt
{
padding-top: 0.25em;
padding-bottom: 0.25em;
+ font-weight: bold;
}
-dl.toc > dt
+dl.toc > dl
{
- padding-top: 1em;
padding-bottom: 0.5em;
- font-weight: bold;
}
.parameter
@@ -346,7 +347,9 @@ acronym,abbr
}
@media screen {
- sup a.footnote
+ /* these have a <sup> as a first child, but since there are no parent selectors
+ * we can't use that. */
+ a.footnote
{
position: relative;
top: 0em ! important;
diff --git a/docs/reference/html/up-insensitive.png b/docs/html/up-insensitive.png
index f404986..f404986 100644
--- a/docs/reference/html/up-insensitive.png
+++ b/docs/html/up-insensitive.png
Binary files differ
diff --git a/docs/reference/html/up.png b/docs/html/up.png
index 80b4b37..80b4b37 100644
--- a/docs/reference/html/up.png
+++ b/docs/html/up.png
Binary files differ
diff --git a/docs/html/using-harfbuzzs-native-opentype-implementation.html b/docs/html/using-harfbuzzs-native-opentype-implementation.html
new file mode 100644
index 0000000..1980ba8
--- /dev/null
+++ b/docs/html/using-harfbuzzs-native-opentype-implementation.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Using Harfbuzz's native OpenType implementation: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="fonts-and-faces.html" title="Fonts and faces">
+<link rel="prev" href="fonts-and-faces.html" title="Fonts and faces">
+<link rel="next" href="using-your-own-font-functions.html" title="Using your own font functions">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="fonts-and-faces.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="fonts-and-faces.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="using-your-own-font-functions.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="using-harfbuzzs-native-opentype-implementation"></a>Using Harfbuzz's native OpenType implementation</h2></div></div></div>
+<p>
+ </p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/using-your-own-font-functions.html b/docs/html/using-your-own-font-functions.html
new file mode 100644
index 0000000..b1e94d8
--- /dev/null
+++ b/docs/html/using-your-own-font-functions.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Using your own font functions: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="fonts-and-faces.html" title="Fonts and faces">
+<link rel="prev" href="using-harfbuzzs-native-opentype-implementation.html" title="Using Harfbuzz's native OpenType implementation">
+<link rel="next" href="shaping-and-shape-plans.html" title="Shaping and shape plans">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="fonts-and-faces.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="using-harfbuzzs-native-opentype-implementation.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="shaping-and-shape-plans.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="using-your-own-font-functions"></a>Using your own font functions</h2></div></div></div>
+<p>
+ </p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/what-about-the-other-scripts.html b/docs/html/what-about-the-other-scripts.html
new file mode 100644
index 0000000..0550e73
--- /dev/null
+++ b/docs/html/what-about-the-other-scripts.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>What about the other scripts?: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="buffers-language-script-and-direction.html" title="Buffers, language, script and direction">
+<link rel="prev" href="setting-buffer-properties.html" title="Setting buffer properties">
+<link rel="next" href="customizing-unicode-functions.html" title="Customizing Unicode functions">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="buffers-language-script-and-direction.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="setting-buffer-properties.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="customizing-unicode-functions.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="what-about-the-other-scripts"></a>What about the other scripts?</h2></div></div></div>
+<p>
+ </p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/what-is-harfbuzz.html b/docs/html/what-is-harfbuzz.html
new file mode 100644
index 0000000..d791d47
--- /dev/null
+++ b/docs/html/what-is-harfbuzz.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>What is Harfbuzz?: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="pt01.html" title="Part I. User's manual">
+<link rel="prev" href="pt01.html" title="Part I. User's manual">
+<link rel="next" href="why-is-it-called-harfbuzz.html" title="Why is it called Harfbuzz?">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="pt01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="pt01.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="why-is-it-called-harfbuzz.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="what-is-harfbuzz"></a>What is Harfbuzz?</h2></div></div></div>
+<div class="toc"><dl class="toc">
+<dt><span class="section"><a href="what-is-harfbuzz.html#why-do-i-need-it">Why do I need it?</a></span></dt>
+<dt><span class="section"><a href="why-is-it-called-harfbuzz.html">Why is it called Harfbuzz?</a></span></dt>
+</dl></div>
+<p>
+ Harfbuzz is a <span class="emphasis"><em>text shaping engine</em></span>. It solves
+ the problem of selecting and positioning glyphs from a font given a
+ Unicode string.
+ </p>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="why-do-i-need-it"></a>Why do I need it?</h2></div></div></div>
+<p>
+ Text shaping is an integral part of preparing text for display. It
+ is a fairly low level operation; Harfbuzz is used directly by
+ graphic rendering libraries such as Pango, and the layout engines
+ in Firefox, LibreOffice and Chromium. Unless you are
+ <span class="emphasis"><em>writing</em></span> one of these layout engines yourself,
+ you will probably not need to use Harfbuzz - normally higher level
+ libraries will turn text into glyphs for you.
+ </p>
+<p>
+ However, if you <span class="emphasis"><em>are</em></span> writing a layout engine
+ or graphics library yourself, you will need to perform text
+ shaping, and this is where Harfbuzz can help you. Here are some
+ reasons why you need it:
+ </p>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>
+ OpenType fonts contain a set of glyphs, indexed by glyph ID.
+ The glyph ID within the font does not necessarily relate to a
+ Unicode codepoint. For instance, some fonts have the letter
+ "a" as glyph ID 1. To pull the right glyph out of
+ the font in order to display it, you need to consult a table
+ within the font (the "cmap" table) which maps
+ Unicode codepoints to glyph IDs. Text shaping turns codepoints
+ into glyph IDs.
+ </p></li>
+<li class="listitem"><p>
+ Many OpenType fonts contain ligatures: combinations of
+ characters which are rendered together. For instance, it's
+ common for the <code class="literal">fi</code> combination to appear in
+ print as the single ligature "fi". Whether you should
+ render text as <code class="literal">fi</code> or "fi" does not
+ depend on the input text, but on the capabilities of the font
+ and the level of ligature application you wish to perform.
+ Text shaping involves querying the font's ligature tables and
+ determining what substitutions should be made.
+ </p></li>
+<li class="listitem"><p>
+ While ligatures like "fi" are typographic
+ refinements, some languages <span class="emphasis"><em>require</em></span> such
+ substitutions to be made in order to display text correctly.
+ In Tamil, when the letter "TTA" (ட) letter is
+ followed by "U" (உ), the combination should appear
+ as the single glyph "டு". The sequence of Unicode
+ characters "டஉ" needs to be rendered as a single
+ glyph from the font - text shaping chooses the correct glyph
+ from the sequence of characters provided.
+ </p></li>
+<li class="listitem"><p>
+ Similarly, each Arabic character has four different variants:
+ within a font, there will be glyphs for the initial, medial,
+ final, and isolated forms of each letter. Unicode only encodes
+ one codepoint per character, and so a Unicode string will not
+ tell you which glyph to use. Text shaping chooses the correct
+ form of the letter and returns the correct glyph from the font
+ that you need to render.
+ </p></li>
+<li class="listitem"><p>
+ Other languages have marks and accents which need to be
+ rendered in certain positions around a base character. For
+ instance, the Moldovan language has the Cyrillic letter
+ "zhe" (ж) with a breve accent, like so: ӂ. Some
+ fonts will contain this character as an individual glyph,
+ whereas other fonts will not contain a zhe-with-breve glyph
+ but expect the rendering engine to form the character by
+ overlaying the two glyphs ж and ˘. Where you should draw the
+ combining breve depends on the height of the preceding glyph.
+ Again, for Arabic, the correct positioning of vowel marks
+ depends on the height of the character on which you are
+ placing the mark. Text shaping tells you whether you have a
+ precomposed glyph within your font or if you need to compose a
+ glyph yourself out of combining marks, and if so, where to
+ position those marks.
+ </p></li>
+</ul></div>
+<p>
+ If this is something that you need to do, then you need a text
+ shaping engine: you could use Uniscribe if you are using Windows;
+ you could use CoreText on OS X; or you could use Harfbuzz. In the
+ rest of this manual, we are going to assume that you are the
+ implementor of a text layout engine.
+ </p>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/html/why-is-it-called-harfbuzz.html b/docs/html/why-is-it-called-harfbuzz.html
new file mode 100644
index 0000000..afe00b0
--- /dev/null
+++ b/docs/html/why-is-it-called-harfbuzz.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Why is it called Harfbuzz?: HarfBuzz Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="HarfBuzz Manual">
+<link rel="up" href="what-is-harfbuzz.html" title="What is Harfbuzz?">
+<link rel="prev" href="what-is-harfbuzz.html" title="What is Harfbuzz?">
+<link rel="next" href="install-harfbuzz.html" title="Install Harfbuzz">
+<meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="what-is-harfbuzz.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="what-is-harfbuzz.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="install-harfbuzz.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="why-is-it-called-harfbuzz"></a>Why is it called Harfbuzz?</h2></div></div></div>
+<p>
+ Harfbuzz began its life as text shaping code within the FreeType
+ project, (and you will see references to the FreeType authors
+ within the source code copyright declarations) but was then
+ abstracted out to its own project. This project is maintained by
+ Behdad Esfahbod, and named Harfbuzz. Originally, it was a shaping
+ engine for OpenType fonts - "Harfbuzz" is the Persian
+ for "open type".
+ </p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.24.1</div>
+</body>
+</html> \ No newline at end of file
diff --git a/docs/reference/Makefile.am b/docs/reference/Makefile.am
deleted file mode 100644
index f7a4ad6..0000000
--- a/docs/reference/Makefile.am
+++ /dev/null
@@ -1,111 +0,0 @@
-# Process this file with automake to produce Makefile.in
-
-# We require automake 1.6 at least.
-AUTOMAKE_OPTIONS = 1.6
-
-# This is a blank Makefile.am for using gtk-doc.
-# Copy this to your project's API docs directory and modify the variables to
-# suit your project. See the GTK+ Makefiles in gtk+/docs/reference for examples
-# of using the various options.
-
-# The name of the module, e.g. 'glib'.
-DOC_MODULE=harfbuzz
-
-# Uncomment for versioned docs and specify the version of the module, e.g. '2'.
-#DOC_MODULE_VERSION=$(HB_VERSION_MAJOR)
-
-# The top-level SGML file. You can change this if you want to.
-DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.xml
-
-# Directories containing the source code.
-# gtk-doc will search all .c and .h files beneath these paths
-# for inline comments documenting functions and macros.
-# e.g. DOC_SOURCE_DIR=$(top_srcdir)/gtk $(top_srcdir)/gdk
-DOC_SOURCE_DIR=$(top_srcdir)/src $(top_builddir)/src
-
-# Extra options to pass to gtkdoc-scangobj. Not normally needed.
-SCANGOBJ_OPTIONS=
-
-# Extra options to supply to gtkdoc-scan.
-# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED"
-SCAN_OPTIONS=--rebuild-types --deprecated-guards="HB_DISABLE_DEPRECATED"
-
-# Header files or dirs to ignore when scanning. Use base file/dir names
-# e.g. IGNORE_HFILES=gtkdebug.h gtkintl.h private_code
-IGNORE_HFILES=`cd $(top_srcdir)/src; find . -path './hb-*/*.h' | sed 's@^.*/@@'`
-if HAVE_GOBJECT
-else
-IGNORE_HFILES+=hb-gobject.h hb-gobject-enums.h hb-gobject-structs.h
-endif
-
-# Extra options to supply to gtkdoc-mkdb.
-# e.g. MKDB_OPTIONS=--xml-mode --output-format=xml
-MKDB_OPTIONS=--source-suffixes=h,cc --xml-mode --output-format=xml --ignore-files="$(IGNORE_HFILES)"
-
-# Extra options to supply to gtkdoc-mktmpl
-# e.g. MKTMPL_OPTIONS=--only-section-tmpl
-MKTMPL_OPTIONS=
-
-# Extra options to supply to gtkdoc-mkhtml
-MKHTML_OPTIONS=
-
-# Extra options to supply to gtkdoc-fixref. Not normally needed.
-# e.g. FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html
-FIXXREF_OPTIONS=
-
-# Used for dependencies. The docs will be rebuilt if any of these change.
-# e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h
-# e.g. CFILE_GLOB=$(top_srcdir)/gtk/*.c
-HFILE_GLOB=$(top_srcdir)/src/hb.h $(top_srcdir)/src/hb-*.h
-CFILE_GLOB=$(top_srcdir)/src/hb-*.cc
-
-# Extra header to include when scanning, which are not under DOC_SOURCE_DIR
-# e.g. EXTRA_HFILES=$(top_srcdir}/contrib/extra.h
-EXTRA_HFILES=$(top_builddir)/src/hb-version.h
-
-# Images to copy into HTML directory.
-# e.g. HTML_IMAGES=$(top_srcdir)/gtk/stock-icons/stock_about_24.png
-HTML_IMAGES=
-
-# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE).
-# e.g. content_files=running.sgml building.sgml changes-2.0.sgml
-content_files= version.xml
-
-# SGML files where gtk-doc abbrevations (#GtkWidget) are expanded
-# These files must be listed here *and* in content_files
-# e.g. expand_content_files=running.sgml
-expand_content_files=
-
-# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library.
-# Only needed if you are using gtkdoc-scangobj to dynamically query widget
-# signals and properties.
-# e.g. GTKDOC_CFLAGS=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS)
-# e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib)
-GTKDOC_CFLAGS=
-GTKDOC_LIBS=$(top_builddir)/src/libharfbuzz.la
-if HAVE_GOBJECT
-GTKDOC_LIBS+=$(top_builddir)/src/libharfbuzz-gobject.la
-endif
-
-# This includes the standard gtk-doc make rules, copied by gtkdocize.
-include $(top_srcdir)/gtk-doc.make
-
-# Other files to distribute
-# e.g. EXTRA_DIST += version.xml.in
-EXTRA_DIST += version.xml.in
-
-# Files not to distribute
-# for --rebuild-types in $(SCAN_OPTIONS), e.g. $(DOC_MODULE).types
-# for --rebuild-sections in $(SCAN_OPTIONS) e.g. $(DOC_MODULE)-sections.txt
-#DISTCLEANFILES +=
-
-# Comment this out if you want 'make check' to test you doc status
-# and run some sanity checks
-if ENABLE_GTK_DOC
-TESTS_ENVIRONMENT = cd $(srcdir) && \
- DOC_MODULE=$(DOC_MODULE) DOC_MAIN_SGML_FILE=$(DOC_MAIN_SGML_FILE) \
- SRCDIR=$(abs_srcdir) BUILDDIR=$(abs_builddir)
-#TESTS = $(GTKDOC_CHECK)
-endif
-
--include $(top_srcdir)/git.mk
diff --git a/docs/reference/Makefile.in b/docs/reference/Makefile.in
deleted file mode 100644
index d090c74..0000000
--- a/docs/reference/Makefile.in
+++ /dev/null
@@ -1,852 +0,0 @@
-# Makefile.in generated by automake 1.14 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994-2013 Free Software Foundation, Inc.
-
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-@SET_MAKE@
-
-# Process this file with automake to produce Makefile.in
-
-# -*- mode: makefile -*-
-
-####################################
-# Everything below here is generic #
-####################################
-VPATH = @srcdir@
-am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
-am__make_running_with_option = \
- case $${target_option-} in \
- ?) ;; \
- *) echo "am__make_running_with_option: internal error: invalid" \
- "target option '$${target_option-}' specified" >&2; \
- exit 1;; \
- esac; \
- has_opt=no; \
- sane_makeflags=$$MAKEFLAGS; \
- if $(am__is_gnu_make); then \
- sane_makeflags=$$MFLAGS; \
- else \
- case $$MAKEFLAGS in \
- *\\[\ \ ]*) \
- bs=\\; \
- sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
- | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
- esac; \
- fi; \
- skip_next=no; \
- strip_trailopt () \
- { \
- flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
- }; \
- for flg in $$sane_makeflags; do \
- test $$skip_next = yes && { skip_next=no; continue; }; \
- case $$flg in \
- *=*|--*) continue;; \
- -*I) strip_trailopt 'I'; skip_next=yes;; \
- -*I?*) strip_trailopt 'I';; \
- -*O) strip_trailopt 'O'; skip_next=yes;; \
- -*O?*) strip_trailopt 'O';; \
- -*l) strip_trailopt 'l'; skip_next=yes;; \
- -*l?*) strip_trailopt 'l';; \
- -[dEDm]) skip_next=yes;; \
- -[JT]) skip_next=yes;; \
- esac; \
- case $$flg in \
- *$$target_option*) has_opt=yes; break;; \
- esac; \
- done; \
- test $$has_opt = yes
-am__make_dryrun = (target_option=n; $(am__make_running_with_option))
-am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-@HAVE_GOBJECT_FALSE@am__append_1 = hb-gobject.h hb-gobject-enums.h hb-gobject-structs.h
-@HAVE_GOBJECT_TRUE@am__append_2 = $(top_builddir)/src/libharfbuzz-gobject.la
-DIST_COMMON = $(top_srcdir)/gtk-doc.make $(srcdir)/Makefile.in \
- $(srcdir)/Makefile.am $(srcdir)/version.xml.in
-subdir = docs/reference
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_pthread.m4 \
- $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/libtool.m4 \
- $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
- $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES = version.xml
-CONFIG_CLEAN_VPATH_FILES =
-AM_V_P = $(am__v_P_@AM_V@)
-am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
-am__v_P_0 = false
-am__v_P_1 = :
-AM_V_GEN = $(am__v_GEN_@AM_V@)
-am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
-am__v_GEN_0 = @echo " GEN " $@;
-am__v_GEN_1 =
-AM_V_at = $(am__v_at_@AM_V@)
-am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
-am__v_at_0 = @
-am__v_at_1 =
-SOURCES =
-DIST_SOURCES =
-am__can_run_installinfo = \
- case $$AM_UPDATE_INFO_DIR in \
- n|no|NO) false;; \
- *) (install-info --version) >/dev/null 2>&1;; \
- esac
-am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
-AR = @AR@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CAIRO_CFLAGS = @CAIRO_CFLAGS@
-CAIRO_FT_CFLAGS = @CAIRO_FT_CFLAGS@
-CAIRO_FT_LIBS = @CAIRO_FT_LIBS@
-CAIRO_LIBS = @CAIRO_LIBS@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CORETEXT_CFLAGS = @CORETEXT_CFLAGS@
-CORETEXT_LIBS = @CORETEXT_LIBS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
-FREETYPE_LIBS = @FREETYPE_LIBS@
-GIT = @GIT@
-GLIB_CFLAGS = @GLIB_CFLAGS@
-GLIB_LIBS = @GLIB_LIBS@
-GLIB_MKENUMS = @GLIB_MKENUMS@
-GOBJECT_CFLAGS = @GOBJECT_CFLAGS@
-GOBJECT_LIBS = @GOBJECT_LIBS@
-GRAPHITE2_CFLAGS = @GRAPHITE2_CFLAGS@
-GRAPHITE2_LIBS = @GRAPHITE2_LIBS@
-GREP = @GREP@
-GTKDOC_CHECK = @GTKDOC_CHECK@
-GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
-GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
-GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
-GTKDOC_MKPDF = @GTKDOC_MKPDF@
-GTKDOC_REBASE = @GTKDOC_REBASE@
-HB_LIBTOOL_VERSION_INFO = @HB_LIBTOOL_VERSION_INFO@
-HB_VERSION = @HB_VERSION@
-HB_VERSION_MAJOR = @HB_VERSION_MAJOR@
-HB_VERSION_MICRO = @HB_VERSION_MICRO@
-HB_VERSION_MINOR = @HB_VERSION_MINOR@
-HTML_DIR = @HTML_DIR@
-ICU_CFLAGS = @ICU_CFLAGS@
-ICU_CONFIG = @ICU_CONFIG@
-ICU_LIBS = @ICU_LIBS@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@
-INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@
-INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@
-INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@
-INTROSPECTION_LIBS = @INTROSPECTION_LIBS@
-INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@
-INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@
-INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MKDIR_P = @MKDIR_P@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PKG_CONFIG = @PKG_CONFIG@
-PTHREAD_CC = @PTHREAD_CC@
-PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
-PTHREAD_LIBS = @PTHREAD_LIBS@
-RAGEL = @RAGEL@
-RANLIB = @RANLIB@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-UNISCRIBE_CFLAGS = @UNISCRIBE_CFLAGS@
-UNISCRIBE_LIBS = @UNISCRIBE_LIBS@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-ax_pthread_config = @ax_pthread_config@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-
-# We require automake 1.6 at least.
-AUTOMAKE_OPTIONS = 1.6
-
-# This is a blank Makefile.am for using gtk-doc.
-# Copy this to your project's API docs directory and modify the variables to
-# suit your project. See the GTK+ Makefiles in gtk+/docs/reference for examples
-# of using the various options.
-
-# The name of the module, e.g. 'glib'.
-DOC_MODULE = harfbuzz
-
-# Uncomment for versioned docs and specify the version of the module, e.g. '2'.
-#DOC_MODULE_VERSION=$(HB_VERSION_MAJOR)
-
-# The top-level SGML file. You can change this if you want to.
-DOC_MAIN_SGML_FILE = $(DOC_MODULE)-docs.xml
-
-# Directories containing the source code.
-# gtk-doc will search all .c and .h files beneath these paths
-# for inline comments documenting functions and macros.
-# e.g. DOC_SOURCE_DIR=$(top_srcdir)/gtk $(top_srcdir)/gdk
-DOC_SOURCE_DIR = $(top_srcdir)/src $(top_builddir)/src
-
-# Extra options to pass to gtkdoc-scangobj. Not normally needed.
-SCANGOBJ_OPTIONS =
-
-# Extra options to supply to gtkdoc-scan.
-# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED"
-SCAN_OPTIONS = --rebuild-types --deprecated-guards="HB_DISABLE_DEPRECATED"
-
-# Header files or dirs to ignore when scanning. Use base file/dir names
-# e.g. IGNORE_HFILES=gtkdebug.h gtkintl.h private_code
-IGNORE_HFILES = `cd $(top_srcdir)/src; find . -path './hb-*/*.h' | sed \
- 's@^.*/@@'` $(am__append_1)
-
-# Extra options to supply to gtkdoc-mkdb.
-# e.g. MKDB_OPTIONS=--xml-mode --output-format=xml
-MKDB_OPTIONS = --source-suffixes=h,cc --xml-mode --output-format=xml --ignore-files="$(IGNORE_HFILES)"
-
-# Extra options to supply to gtkdoc-mktmpl
-# e.g. MKTMPL_OPTIONS=--only-section-tmpl
-MKTMPL_OPTIONS =
-
-# Extra options to supply to gtkdoc-mkhtml
-MKHTML_OPTIONS =
-
-# Extra options to supply to gtkdoc-fixref. Not normally needed.
-# e.g. FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html
-FIXXREF_OPTIONS =
-
-# Used for dependencies. The docs will be rebuilt if any of these change.
-# e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h
-# e.g. CFILE_GLOB=$(top_srcdir)/gtk/*.c
-HFILE_GLOB = $(top_srcdir)/src/hb.h $(top_srcdir)/src/hb-*.h
-CFILE_GLOB = $(top_srcdir)/src/hb-*.cc
-
-# Extra header to include when scanning, which are not under DOC_SOURCE_DIR
-# e.g. EXTRA_HFILES=$(top_srcdir}/contrib/extra.h
-EXTRA_HFILES = $(top_builddir)/src/hb-version.h
-
-# Images to copy into HTML directory.
-# e.g. HTML_IMAGES=$(top_srcdir)/gtk/stock-icons/stock_about_24.png
-HTML_IMAGES =
-
-# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE).
-# e.g. content_files=running.sgml building.sgml changes-2.0.sgml
-content_files = version.xml
-
-# SGML files where gtk-doc abbrevations (#GtkWidget) are expanded
-# These files must be listed here *and* in content_files
-# e.g. expand_content_files=running.sgml
-expand_content_files =
-
-# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library.
-# Only needed if you are using gtkdoc-scangobj to dynamically query widget
-# signals and properties.
-# e.g. GTKDOC_CFLAGS=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS)
-# e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib)
-GTKDOC_CFLAGS =
-GTKDOC_LIBS = $(top_builddir)/src/libharfbuzz.la $(am__append_2)
-@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_CC = $(CC) $(INCLUDES) $(GTKDOC_DEPS_CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(INCLUDES) $(GTKDOC_DEPS_CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_LD = $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS)
-@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS)
-@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_RUN =
-@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_RUN = $(LIBTOOL) --mode=execute
-
-# We set GPATH here; this gives us semantics for GNU make
-# which are more like other make's VPATH, when it comes to
-# whether a source that is a target of one rule is then
-# searched for in VPATH/GPATH.
-#
-GPATH = $(srcdir)
-TARGET_DIR = $(HTML_DIR)/$(DOC_MODULE)
-SETUP_FILES = \
- $(content_files) \
- $(DOC_MAIN_SGML_FILE) \
- $(DOC_MODULE)-sections.txt \
- $(DOC_MODULE)-overrides.txt
-
-
-# This includes the standard gtk-doc make rules, copied by gtkdocize.
-
-# Other files to distribute
-# e.g. EXTRA_DIST += version.xml.in
-EXTRA_DIST = $(HTML_IMAGES) $(SETUP_FILES) version.xml.in
-DOC_STAMPS = setup-build.stamp scan-build.stamp sgml-build.stamp \
- html-build.stamp pdf-build.stamp \
- sgml.stamp html.stamp pdf.stamp
-
-SCANOBJ_FILES = \
- $(DOC_MODULE).args \
- $(DOC_MODULE).hierarchy \
- $(DOC_MODULE).interfaces \
- $(DOC_MODULE).prerequisites \
- $(DOC_MODULE).signals
-
-REPORT_FILES = \
- $(DOC_MODULE)-undocumented.txt \
- $(DOC_MODULE)-undeclared.txt \
- $(DOC_MODULE)-unused.txt
-
-CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) gtkdoc-check.test
-@GTK_DOC_BUILD_HTML_FALSE@HTML_BUILD_STAMP =
-@GTK_DOC_BUILD_HTML_TRUE@HTML_BUILD_STAMP = html-build.stamp
-@GTK_DOC_BUILD_PDF_FALSE@PDF_BUILD_STAMP =
-@GTK_DOC_BUILD_PDF_TRUE@PDF_BUILD_STAMP = pdf-build.stamp
-
-#### setup ####
-GTK_DOC_V_SETUP = $(GTK_DOC_V_SETUP_$(V))
-GTK_DOC_V_SETUP_ = $(GTK_DOC_V_SETUP_$(AM_DEFAULT_VERBOSITY))
-GTK_DOC_V_SETUP_0 = @echo " DOC Preparing build";
-
-#### scan ####
-GTK_DOC_V_SCAN = $(GTK_DOC_V_SCAN_$(V))
-GTK_DOC_V_SCAN_ = $(GTK_DOC_V_SCAN_$(AM_DEFAULT_VERBOSITY))
-GTK_DOC_V_SCAN_0 = @echo " DOC Scanning header files";
-GTK_DOC_V_INTROSPECT = $(GTK_DOC_V_INTROSPECT_$(V))
-GTK_DOC_V_INTROSPECT_ = $(GTK_DOC_V_INTROSPECT_$(AM_DEFAULT_VERBOSITY))
-GTK_DOC_V_INTROSPECT_0 = @echo " DOC Introspecting gobjects";
-
-#### xml ####
-GTK_DOC_V_XML = $(GTK_DOC_V_XML_$(V))
-GTK_DOC_V_XML_ = $(GTK_DOC_V_XML_$(AM_DEFAULT_VERBOSITY))
-GTK_DOC_V_XML_0 = @echo " DOC Building XML";
-
-#### html ####
-GTK_DOC_V_HTML = $(GTK_DOC_V_HTML_$(V))
-GTK_DOC_V_HTML_ = $(GTK_DOC_V_HTML_$(AM_DEFAULT_VERBOSITY))
-GTK_DOC_V_HTML_0 = @echo " DOC Building HTML";
-GTK_DOC_V_XREF = $(GTK_DOC_V_XREF_$(V))
-GTK_DOC_V_XREF_ = $(GTK_DOC_V_XREF_$(AM_DEFAULT_VERBOSITY))
-GTK_DOC_V_XREF_0 = @echo " DOC Fixing cross-references";
-
-#### pdf ####
-GTK_DOC_V_PDF = $(GTK_DOC_V_PDF_$(V))
-GTK_DOC_V_PDF_ = $(GTK_DOC_V_PDF_$(AM_DEFAULT_VERBOSITY))
-GTK_DOC_V_PDF_0 = @echo " DOC Building PDF";
-
-# Files not to distribute
-# for --rebuild-types in $(SCAN_OPTIONS), e.g. $(DOC_MODULE).types
-# for --rebuild-sections in $(SCAN_OPTIONS) e.g. $(DOC_MODULE)-sections.txt
-#DISTCLEANFILES +=
-
-# Comment this out if you want 'make check' to test you doc status
-# and run some sanity checks
-@ENABLE_GTK_DOC_TRUE@TESTS_ENVIRONMENT = cd $(srcdir) && \
-@ENABLE_GTK_DOC_TRUE@ DOC_MODULE=$(DOC_MODULE) DOC_MAIN_SGML_FILE=$(DOC_MAIN_SGML_FILE) \
-@ENABLE_GTK_DOC_TRUE@ SRCDIR=$(abs_srcdir) BUILDDIR=$(abs_builddir)
-
-all: all-am
-
-.SUFFIXES:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/gtk-doc.make $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
- && { if test -f $@; then exit 0; else break; fi; }; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits docs/reference/Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnits docs/reference/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
- esac;
-$(top_srcdir)/gtk-doc.make:
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: $(am__configure_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-version.xml: $(top_builddir)/config.status $(srcdir)/version.xml.in
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
-
-mostlyclean-libtool:
- -rm -f *.lo
-
-clean-libtool:
- -rm -rf .libs _libs
-tags TAGS:
-
-ctags CTAGS:
-
-cscope cscopelist:
-
-
-distdir: $(DISTFILES)
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$(top_distdir)" distdir="$(distdir)" \
- dist-hook
-check-am: all-am
-check: check-am
-@ENABLE_GTK_DOC_FALSE@all-local:
-all-am: Makefile all-local
-installdirs:
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
- if test -z '$(STRIP)'; then \
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- install; \
- else \
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
- fi
-mostlyclean-generic:
-
-clean-generic:
- -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-generic clean-libtool clean-local mostlyclean-am
-
-distclean: distclean-am
- -rm -f Makefile
-distclean-am: clean-am distclean-generic distclean-local
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-html-am:
-
-info: info-am
-
-info-am:
-
-install-data-am: install-data-local
-
-install-dvi: install-dvi-am
-
-install-dvi-am:
-
-install-exec-am:
-
-install-html: install-html-am
-
-install-html-am:
-
-install-info: install-info-am
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-am
-
-install-pdf-am:
-
-install-ps: install-ps-am
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic \
- maintainer-clean-local
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-generic mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am: uninstall-local
-
-.MAKE: install-am install-strip
-
-.PHONY: all all-am all-local check check-am clean clean-generic \
- clean-libtool clean-local cscopelist-am ctags-am dist-hook \
- distclean distclean-generic distclean-libtool distclean-local \
- distdir dvi dvi-am html html-am info info-am install \
- install-am install-data install-data-am install-data-local \
- install-dvi install-dvi-am install-exec install-exec-am \
- install-html install-html-am install-info install-info-am \
- install-man install-pdf install-pdf-am install-ps \
- install-ps-am install-strip installcheck installcheck-am \
- installdirs maintainer-clean maintainer-clean-generic \
- maintainer-clean-local mostlyclean mostlyclean-generic \
- mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \
- uninstall-am uninstall-local
-
-
-gtkdoc-check.test: Makefile
- $(AM_V_GEN)echo "#!/bin/sh -e" > $@; \
- echo "$(GTKDOC_CHECK_PATH) || exit 1" >> $@; \
- chmod +x $@
-
-all-gtk-doc: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP)
-.PHONY: all-gtk-doc
-
-@ENABLE_GTK_DOC_TRUE@all-local: all-gtk-doc
-
-docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP)
-
-$(REPORT_FILES): sgml-build.stamp
-
-setup-build.stamp:
- -$(GTK_DOC_V_SETUP)if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
- files=`echo $(SETUP_FILES) $(expand_content_files) $(DOC_MODULE).types`; \
- if test "x$$files" != "x" ; then \
- for file in $$files ; do \
- destdir=`dirname $(abs_builddir)/$$file`; \
- test -d "$$destdir" || mkdir -p "$$destdir"; \
- test -f $(abs_srcdir)/$$file && \
- cp -pf $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \
- done; \
- fi; \
- fi
- $(AM_V_at)touch setup-build.stamp
-
-scan-build.stamp: setup-build.stamp $(HFILE_GLOB) $(CFILE_GLOB)
- $(GTK_DOC_V_SCAN)_source_dir='' ; \
- for i in $(DOC_SOURCE_DIR) ; do \
- _source_dir="$${_source_dir} --source-dir=$$i" ; \
- done ; \
- gtkdoc-scan --module=$(DOC_MODULE) --ignore-headers="$(IGNORE_HFILES)" $${_source_dir} $(SCAN_OPTIONS) $(EXTRA_HFILES)
- $(GTK_DOC_V_INTROSPECT)if grep -l '^..*$$' $(DOC_MODULE).types > /dev/null 2>&1 ; then \
- scanobj_options=""; \
- gtkdoc-scangobj 2>&1 --help | grep >/dev/null "\-\-verbose"; \
- if test "$(?)" = "0"; then \
- if test "x$(V)" = "x1"; then \
- scanobj_options="--verbose"; \
- fi; \
- fi; \
- CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" \
- gtkdoc-scangobj $(SCANGOBJ_OPTIONS) $$scanobj_options --module=$(DOC_MODULE); \
- else \
- for i in $(SCANOBJ_FILES) ; do \
- test -f $$i || touch $$i ; \
- done \
- fi
- $(AM_V_at)touch scan-build.stamp
-
-$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp
- @true
-
-sgml-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt $(expand_content_files)
- $(GTK_DOC_V_XML)_source_dir='' ; \
- for i in $(DOC_SOURCE_DIR) ; do \
- _source_dir="$${_source_dir} --source-dir=$$i" ; \
- done ; \
- gtkdoc-mkdb --module=$(DOC_MODULE) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $${_source_dir} $(MKDB_OPTIONS)
- $(AM_V_at)touch sgml-build.stamp
-
-sgml.stamp: sgml-build.stamp
- @true
-
-html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
- $(GTK_DOC_V_HTML)rm -rf html && mkdir html && \
- mkhtml_options=""; \
- gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-verbose"; \
- if test "$(?)" = "0"; then \
- if test "x$(V)" = "x1"; then \
- mkhtml_options="$$mkhtml_options --verbose"; \
- fi; \
- fi; \
- gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-path"; \
- if test "$(?)" = "0"; then \
- mkhtml_options="$$mkhtml_options --path=\"$(abs_srcdir)\""; \
- fi; \
- cd html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
- -@test "x$(HTML_IMAGES)" = "x" || \
- for file in $(HTML_IMAGES) ; do \
- if test -f $(abs_srcdir)/$$file ; then \
- cp $(abs_srcdir)/$$file $(abs_builddir)/html; \
- fi; \
- if test -f $(abs_builddir)/$$file ; then \
- cp $(abs_builddir)/$$file $(abs_builddir)/html; \
- fi; \
- done;
- $(GTK_DOC_V_XREF)gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
- $(AM_V_at)touch html-build.stamp
-
-pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
- $(GTK_DOC_V_PDF)rm -f $(DOC_MODULE).pdf && \
- mkpdf_options=""; \
- gtkdoc-mkpdf 2>&1 --help | grep >/dev/null "\-\-verbose"; \
- if test "$(?)" = "0"; then \
- if test "x$(V)" = "x1"; then \
- mkpdf_options="$$mkpdf_options --verbose"; \
- fi; \
- fi; \
- if test "x$(HTML_IMAGES)" != "x"; then \
- for img in $(HTML_IMAGES); do \
- part=`dirname $$img`; \
- echo $$mkpdf_options | grep >/dev/null "\-\-imgdir=$$part "; \
- if test $$? != 0; then \
- mkpdf_options="$$mkpdf_options --imgdir=$$part"; \
- fi; \
- done; \
- fi; \
- gtkdoc-mkpdf --path="$(abs_srcdir)" $$mkpdf_options $(DOC_MODULE) $(DOC_MAIN_SGML_FILE) $(MKPDF_OPTIONS)
- $(AM_V_at)touch pdf-build.stamp
-
-##############
-
-clean-local:
- @rm -f *~ *.bak
- @rm -rf .libs
- @if echo $(SCAN_OPTIONS) | grep -q "\-\-rebuild-types" ; then \
- rm -f $(DOC_MODULE).types; \
- fi
-
-distclean-local:
- @rm -rf xml html $(REPORT_FILES) $(DOC_MODULE).pdf \
- $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
- @if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
- rm -f $(SETUP_FILES) $(expand_content_files) $(DOC_MODULE).types; \
- fi
-
-maintainer-clean-local:
- @rm -rf xml html
-
-install-data-local:
- @installfiles=`echo $(builddir)/html/*`; \
- if test "$$installfiles" = '$(builddir)/html/*'; \
- then echo 1>&2 'Nothing to install' ; \
- else \
- if test -n "$(DOC_MODULE_VERSION)"; then \
- installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
- else \
- installdir="$(DESTDIR)$(TARGET_DIR)"; \
- fi; \
- $(mkinstalldirs) $${installdir} ; \
- for i in $$installfiles; do \
- echo ' $(INSTALL_DATA) '$$i ; \
- $(INSTALL_DATA) $$i $${installdir}; \
- done; \
- if test -n "$(DOC_MODULE_VERSION)"; then \
- mv -f $${installdir}/$(DOC_MODULE).devhelp2 \
- $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \
- fi; \
- $(GTKDOC_REBASE) --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir}; \
- fi
-
-uninstall-local:
- @if test -n "$(DOC_MODULE_VERSION)"; then \
- installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
- else \
- installdir="$(DESTDIR)$(TARGET_DIR)"; \
- fi; \
- rm -rf $${installdir}
-
-#
-# Require gtk-doc when making dist
-#
-@HAVE_GTK_DOC_TRUE@dist-check-gtkdoc: docs
-@HAVE_GTK_DOC_FALSE@dist-check-gtkdoc:
-@HAVE_GTK_DOC_FALSE@ @echo "*** gtk-doc is needed to run 'make dist'. ***"
-@HAVE_GTK_DOC_FALSE@ @echo "*** gtk-doc was not found when 'configure' ran. ***"
-@HAVE_GTK_DOC_FALSE@ @echo "*** please install gtk-doc and rerun 'configure'. ***"
-@HAVE_GTK_DOC_FALSE@ @false
-
-dist-hook: dist-check-gtkdoc all-gtk-doc dist-hook-local
- @mkdir $(distdir)/html
- @cp ./html/* $(distdir)/html
- @-cp ./$(DOC_MODULE).pdf $(distdir)/
- @-cp ./$(DOC_MODULE).types $(distdir)/
- @-cp ./$(DOC_MODULE)-sections.txt $(distdir)/
- @cd $(distdir) && rm -f $(DISTCLEANFILES)
- @$(GTKDOC_REBASE) --online --relative --html-dir=$(distdir)/html
-
-.PHONY : dist-hook-local docs
-#TESTS = $(GTKDOC_CHECK)
-
--include $(top_srcdir)/git.mk
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/docs/reference/harfbuzz-docs.xml b/docs/reference/harfbuzz-docs.xml
deleted file mode 100644
index 2731fab..0000000
--- a/docs/reference/harfbuzz-docs.xml
+++ /dev/null
@@ -1,65 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
- "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
- <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'">
- <!ENTITY version SYSTEM "version.xml">
-]>
-<book id="index">
- <bookinfo>
- <title>HarfBuzz Reference Manual</title>
- <releaseinfo>
- for HarfBuzz &version;.
- <!--The latest version of this documentation can be found on-line at
- <ulink role="online-location" url="http://[SERVER]/libharfbuzz/index.html">http://[SERVER]/libharfbuzz/</ulink>.-->
- </releaseinfo>
- </bookinfo>
-
- <chapter>
- <title>[Insert title here]</title>
- <xi:include href="xml/hb.xml"/>
- <xi:include href="xml/hb-common.xml"/>
- <xi:include href="xml/hb-unicode.xml"/>
- <xi:include href="xml/hb-buffer.xml"/>
- <xi:include href="xml/hb-blob.xml"/>
- <xi:include href="xml/hb-face.xml"/>
- <xi:include href="xml/hb-font.xml"/>
- <xi:include href="xml/hb-shape.xml"/>
-
- <xi:include href="xml/hb-version.xml"/>
- <xi:include href="xml/hb-deprecated.xml"/>
-
- <xi:include href="xml/hb-set.xml"/>
-
- <xi:include href="xml/hb-ot.xml"/>
- <xi:include href="xml/hb-ot-layout.xml"/>
- <xi:include href="xml/hb-ot-tag.xml"/>
-
- <xi:include href="xml/hb-shape-plan.xml"/>
-
- <xi:include href="xml/hb-glib.xml"/>
- <xi:include href="xml/hb-icu.xml"/>
-
- <xi:include href="xml/hb-ft.xml"/>
-
- <xi:include href="xml/hb-graphite2.xml"/>
- <xi:include href="xml/hb-uniscribe.xml"/>
- <xi:include href="xml/hb-coretext.xml"/>
-
- <xi:include href="xml/hb-gobject.xml"/>
-
- </chapter>
- <chapter id="object-tree">
- <title>Object Hierarchy</title>
- <xi:include href="xml/tree_index.sgml"/>
- </chapter>
- <index id="api-index-full">
- <title>API Index</title>
- <xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include>
- </index>
- <index id="deprecated-api-index" role="deprecated">
- <title>Index of deprecated API</title>
- <xi:include href="xml/api-index-deprecated.xml"><xi:fallback /></xi:include>
- </index>
-
- <xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
-</book>
diff --git a/docs/reference/harfbuzz.types b/docs/reference/harfbuzz.types
deleted file mode 100644
index e69de29..0000000
--- a/docs/reference/harfbuzz.types
+++ /dev/null
diff --git a/docs/reference/html/annotation-glossary.html b/docs/reference/html/annotation-glossary.html
deleted file mode 100644
index 1afb91d..0000000
--- a/docs/reference/html/annotation-glossary.html
+++ /dev/null
@@ -1,78 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Annotation Glossary</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="prev" href="deprecated-api-index.html" title="Index of deprecated API">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
-<link rel="stylesheet" href="style.css" type="text/css">
-</head>
-<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts"><span id="nav_glossary"><a class="shortcut" href="#glsA">A</a>
-  <span class="dim">|</span> 
- <a class="shortcut" href="#glsC">C</a>
-  <span class="dim">|</span> 
- <a class="shortcut" href="#glsD">D</a>
-  <span class="dim">|</span> 
- <a class="shortcut" href="#glsE">E</a>
-  <span class="dim">|</span> 
- <a class="shortcut" href="#glsI">I</a>
-  <span class="dim">|</span> 
- <a class="shortcut" href="#glsO">O</a>
-  <span class="dim">|</span> 
- <a class="shortcut" href="#glsS">S</a>
-  <span class="dim">|</span> 
- <a class="shortcut" href="#glsT">T</a></span></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
-<td><a accesskey="p" href="deprecated-api-index.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><img src="right-insensitive.png" width="16" height="16" border="0"></td>
-</tr></table>
-<div class="glossary">
-<div class="titlepage"><div><div><h2 class="title">
-<a name="annotation-glossary"></a>Annotation Glossary</h2></div></div></div>
-<a name="glsA"></a><h3 class="title">A</h3>
-<dt>
-<a name="annotation-glossterm-array"></a>array</dt>
-<dd><p>Parameter points to an array of items.</p></dd>
-<a name="glsC"></a><h3 class="title">C</h3>
-<dt>
-<a name="annotation-glossterm-closure"></a>closure</dt>
-<dd><p>This parameter is a 'user_data', for callbacks; many bindings can pass NULL here.</p></dd>
-<a name="glsD"></a><h3 class="title">D</h3>
-<dt>
-<a name="annotation-glossterm-destroy"></a>destroy</dt>
-<dd><p>This parameter is a 'destroy_data', for callbacks.</p></dd>
-<a name="glsE"></a><h3 class="title">E</h3>
-<dt>
-<a name="annotation-glossterm-element-type"></a>element-type</dt>
-<dd><p>Generics and defining elements of containers and arrays.</p></dd>
-<a name="glsI"></a><h3 class="title">I</h3>
-<dt>
-<a name="annotation-glossterm-inout"></a>inout</dt>
-<dd><p>Parameter for input and for returning results. Default is <acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>.</p></dd>
-<a name="glsO"></a><h3 class="title">O</h3>
-<dt>
-<a name="annotation-glossterm-out"></a>out</dt>
-<dd><p>Parameter for returning results. Default is <acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>.</p></dd>
-<a name="glsS"></a><h3 class="title">S</h3>
-<dt>
-<a name="annotation-glossterm-scope%20notified"></a>scope notified</dt>
-<dd><p>The callback is valid until the GDestroyNotify argument is called.</p></dd>
-<a name="glsT"></a><h3 class="title">T</h3>
-<dt>
-<a name="annotation-glossterm-transfer%20full"></a>transfer full</dt>
-<dd><p>Free data after the code is done.</p></dd>
-<dt>
-<a name="annotation-glossterm-transfer%20none"></a>transfer none</dt>
-<dd><p>Don't free data after the code is done.</p></dd>
-</div>
-<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
-</body>
-</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-buffer.html b/docs/reference/html/harfbuzz-hb-buffer.html
deleted file mode 100644
index 0c32fc8..0000000
--- a/docs/reference/html/harfbuzz-hb-buffer.html
+++ /dev/null
@@ -1,1780 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-buffer</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
-<link rel="prev" href="harfbuzz-hb-unicode.html" title="hb-unicode">
-<link rel="next" href="harfbuzz-hb-blob.html" title="hb-blob">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
-<link rel="stylesheet" href="style.css" type="text/css">
-</head>
-<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
- <a href="#harfbuzz-hb-buffer.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
- <a href="#harfbuzz-hb-buffer.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="harfbuzz-hb-unicode.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="harfbuzz-hb-blob.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
-<div class="refentry">
-<a name="harfbuzz-hb-buffer"></a><div class="titlepage"></div>
-<div class="refnamediv"><table width="100%"><tr>
-<td valign="top">
-<h2><span class="refentrytitle"><a name="harfbuzz-hb-buffer.top_of_page"></a>hb-buffer</span></h2>
-<p>hb-buffer</p>
-</td>
-<td class="gallery_image" valign="top" align="right"></td>
-</tr></table></div>
-<div class="refsect1">
-<a name="harfbuzz-hb-buffer.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-add" title="hb_buffer_add ()">hb_buffer_add</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-add-utf16" title="hb_buffer_add_utf16 ()">hb_buffer_add_utf16</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-add-utf32" title="hb_buffer_add_utf32 ()">hb_buffer_add_utf32</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-add-utf8" title="hb_buffer_add_utf8 ()">hb_buffer_add_utf8</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-add-codepoints" title="hb_buffer_add_codepoints ()">hb_buffer_add_codepoints</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-allocation-successful" title="hb_buffer_allocation_successful ()">hb_buffer_allocation_successful</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-clear-contents" title="hb_buffer_clear_contents ()">hb_buffer_clear_contents</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="returnvalue">hb_buffer_t</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-create" title="hb_buffer_create ()">hb_buffer_create</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-deserialize-glyphs" title="hb_buffer_deserialize_glyphs ()">hb_buffer_deserialize_glyphs</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-destroy" title="hb_buffer_destroy ()">hb_buffer_destroy</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-content-type-t" title="enum hb_buffer_content_type_t"><span class="returnvalue">hb_buffer_content_type_t</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-content-type" title="hb_buffer_get_content_type ()">hb_buffer_get_content_type</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-direction-t" title="enum hb_direction_t"><span class="returnvalue">hb_direction_t</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-direction" title="hb_buffer_get_direction ()">hb_buffer_get_direction</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="returnvalue">hb_buffer_t</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-empty" title="hb_buffer_get_empty ()">hb_buffer_get_empty</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-flags-t" title="enum hb_buffer_flags_t"><span class="returnvalue">hb_buffer_flags_t</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-flags" title="hb_buffer_get_flags ()">hb_buffer_get_flags</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-glyph-info-t"><span class="returnvalue">hb_glyph_info_t</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-glyph-infos" title="hb_buffer_get_glyph_infos ()">hb_buffer_get_glyph_infos</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-glyph-position-t"><span class="returnvalue">hb_glyph_position_t</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-glyph-positions" title="hb_buffer_get_glyph_positions ()">hb_buffer_get_glyph_positions</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-language-t"><span class="returnvalue">hb_language_t</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-language" title="hb_buffer_get_language ()">hb_buffer_get_language</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">unsigned <span class="returnvalue">int</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-length" title="hb_buffer_get_length ()">hb_buffer_get_length</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="returnvalue">hb_codepoint_t</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-replacement-codepoint" title="hb_buffer_get_replacement_codepoint ()">hb_buffer_get_replacement_codepoint</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="returnvalue">hb_script_t</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-script" title="hb_buffer_get_script ()">hb_buffer_get_script</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-segment-properties" title="hb_buffer_get_segment_properties ()">hb_buffer_get_segment_properties</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="returnvalue">hb_unicode_funcs_t</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-unicode-funcs" title="hb_buffer_get_unicode_funcs ()">hb_buffer_get_unicode_funcs</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span> *
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-get-user-data" title="hb_buffer_get_user_data ()">hb_buffer_get_user_data</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-guess-segment-properties" title="hb_buffer_guess_segment_properties ()">hb_buffer_guess_segment_properties</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-normalize-glyphs" title="hb_buffer_normalize_glyphs ()">hb_buffer_normalize_glyphs</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-pre-allocate" title="hb_buffer_pre_allocate ()">hb_buffer_pre_allocate</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="returnvalue">hb_buffer_t</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-reference" title="hb_buffer_reference ()">hb_buffer_reference</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-reset" title="hb_buffer_reset ()">hb_buffer_reset</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-reverse" title="hb_buffer_reverse ()">hb_buffer_reverse</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-reverse-clusters" title="hb_buffer_reverse_clusters ()">hb_buffer_reverse_clusters</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t"><span class="returnvalue">hb_buffer_serialize_format_t</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-format-from-string" title="hb_buffer_serialize_format_from_string ()">hb_buffer_serialize_format_from_string</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">char</span> *
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-format-to-string" title="hb_buffer_serialize_format_to_string ()">hb_buffer_serialize_format_to_string</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">unsigned <span class="returnvalue">int</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-glyphs" title="hb_buffer_serialize_glyphs ()">hb_buffer_serialize_glyphs</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">char</span> **
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-list-formats" title="hb_buffer_serialize_list_formats ()">hb_buffer_serialize_list_formats</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-content-type" title="hb_buffer_set_content_type ()">hb_buffer_set_content_type</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-direction" title="hb_buffer_set_direction ()">hb_buffer_set_direction</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-flags" title="hb_buffer_set_flags ()">hb_buffer_set_flags</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-language" title="hb_buffer_set_language ()">hb_buffer_set_language</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-length" title="hb_buffer_set_length ()">hb_buffer_set_length</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-replacement-codepoint" title="hb_buffer_set_replacement_codepoint ()">hb_buffer_set_replacement_codepoint</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-script" title="hb_buffer_set_script ()">hb_buffer_set_script</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-segment-properties" title="hb_buffer_set_segment_properties ()">hb_buffer_set_segment_properties</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-unicode-funcs" title="hb_buffer_set_unicode_funcs ()">hb_buffer_set_unicode_funcs</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-user-data" title="hb_buffer_set_user_data ()">hb_buffer_set_user_data</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-segment-properties-equal" title="hb_segment_properties_equal ()">hb_segment_properties_equal</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">unsigned <span class="returnvalue">int</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-buffer.html#hb-segment-properties-hash" title="hb_segment_properties_hash ()">hb_segment_properties_hash</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<a name="hb-buffer-t"></a><a name="hb-glyph-info-t"></a><a name="hb-glyph-position-t"></a><a name="hb-segment-properties-t"></a><div class="refsect1">
-<a name="harfbuzz-hb-buffer.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody>
-<tr>
-<td class="define_keyword">#define</td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-buffer.html#HB-SEGMENT-PROPERTIES-DEFAULT:CAPS" title="HB_SEGMENT_PROPERTIES_DEFAULT">HB_SEGMENT_PROPERTIES_DEFAULT</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-content-type-t" title="enum hb_buffer_content_type_t">hb_buffer_content_type_t</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-flags-t" title="enum hb_buffer_flags_t">hb_buffer_flags_t</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-flags-t" title="enum hb_buffer_serialize_flags_t">hb_buffer_serialize_flags_t</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t">hb_buffer_serialize_format_t</a></td>
-</tr>
-<tr>
-<td class="typedef_keyword">typedef</td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t">hb_buffer_t</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-buffer.html#hb-glyph-info-t-struct" title="hb_glyph_info_t">hb_glyph_info_t</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-buffer.html#hb-glyph-position-t-struct" title="hb_glyph_position_t">hb_glyph_position_t</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-buffer.html#hb-segment-properties-t-struct" title="hb_segment_properties_t">hb_segment_properties_t</a></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="harfbuzz-hb-buffer.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen"> GBoxed
- <span class="lineart">├──</span> hb_buffer_t
- <span class="lineart">├──</span> hb_glyph_info_t
- <span class="lineart">├──</span> hb_glyph_position_t
- <span class="lineart">╰──</span> hb_segment_properties_t
- GEnum
- <span class="lineart">├──</span> hb_buffer_content_type_t
- <span class="lineart">╰──</span> hb_buffer_serialize_format_t
- GFlags
- <span class="lineart">├──</span> hb_buffer_flags_t
- <span class="lineart">╰──</span> hb_buffer_serialize_flags_t
-</pre>
-</div>
-<div class="refsect1">
-<a name="harfbuzz-hb-buffer.description"></a><h2>Description</h2>
-<p>
-</p>
-</div>
-<div class="refsect1">
-<a name="harfbuzz-hb-buffer.functions_details"></a><h2>Functions</h2>
-<div class="refsect2">
-<a name="hb-buffer-add"></a><h3>hb_buffer_add ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_add (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> codepoint</code></em>,
- <em class="parameter"><code>unsigned <span class="type">int</span> cluster</code></em>);</pre>
-<div class="refsect3">
-<a name="idp20358224"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-add-utf16"></a><h3>hb_buffer_add_utf16 ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_add_utf16 (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code>const <span class="type">uint16_t</span> *text</code></em>,
- <em class="parameter"><code><span class="type">int</span> text_length</code></em>,
- <em class="parameter"><code>unsigned <span class="type">int</span> item_offset</code></em>,
- <em class="parameter"><code><span class="type">int</span> item_length</code></em>);</pre>
-<div class="refsect3">
-<a name="idp20381120"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>text</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=text_length]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-add-utf32"></a><h3>hb_buffer_add_utf32 ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_add_utf32 (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code>const <span class="type">uint32_t</span> *text</code></em>,
- <em class="parameter"><code><span class="type">int</span> text_length</code></em>,
- <em class="parameter"><code>unsigned <span class="type">int</span> item_offset</code></em>,
- <em class="parameter"><code><span class="type">int</span> item_length</code></em>);</pre>
-<div class="refsect3">
-<a name="idp20407728"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>text</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=text_length]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-add-utf8"></a><h3>hb_buffer_add_utf8 ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_add_utf8 (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code>const <span class="type">char</span> *text</code></em>,
- <em class="parameter"><code><span class="type">int</span> text_length</code></em>,
- <em class="parameter"><code>unsigned <span class="type">int</span> item_offset</code></em>,
- <em class="parameter"><code><span class="type">int</span> item_length</code></em>);</pre>
-<div class="refsect3">
-<a name="idp20434256"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>text</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=text_length][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> uint8_t]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-add-codepoints"></a><h3>hb_buffer_add_codepoints ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_add_codepoints (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code>const <a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *text</code></em>,
- <em class="parameter"><code><span class="type">int</span> text_length</code></em>,
- <em class="parameter"><code>unsigned <span class="type">int</span> item_offset</code></em>,
- <em class="parameter"><code><span class="type">int</span> item_length</code></em>);</pre>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-allocation-successful"></a><h3>hb_buffer_allocation_successful ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
-hb_buffer_allocation_successful (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<div class="refsect3">
-<a name="idp20469136"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp20477536"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-clear-contents"></a><h3>hb_buffer_clear_contents ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_clear_contents (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<div class="refsect3">
-<a name="idp20486656"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-create"></a><h3>hb_buffer_create ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="returnvalue">hb_buffer_t</span></a> *
-hb_buffer_create (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp20501968"></a><h4>Returns</h4>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-deserialize-glyphs"></a><h3>hb_buffer_deserialize_glyphs ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
-hb_buffer_deserialize_glyphs (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code>const <span class="type">char</span> *buf</code></em>,
- <em class="parameter"><code><span class="type">int</span> buf_len</code></em>,
- <em class="parameter"><code>const <span class="type">char</span> **end_ptr</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t"><span class="type">hb_buffer_serialize_format_t</span></a> format</code></em>);</pre>
-<div class="refsect3">
-<a name="idp20519024"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>buf</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=buf_len]</span></td>
-</tr>
-<tr>
-<td class="parameter_name"><p>end_ptr</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp22130896"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-destroy"></a><h3>hb_buffer_destroy ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_destroy (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22138688"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-get-content-type"></a><h3>hb_buffer_get_content_type ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-content-type-t" title="enum hb_buffer_content_type_t"><span class="returnvalue">hb_buffer_content_type_t</span></a>
-hb_buffer_get_content_type (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22152720"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp22160224"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-get-direction"></a><h3>hb_buffer_get_direction ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-direction-t" title="enum hb_direction_t"><span class="returnvalue">hb_direction_t</span></a>
-hb_buffer_get_direction (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22168016"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp22175520"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-get-empty"></a><h3>hb_buffer_get_empty ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="returnvalue">hb_buffer_t</span></a> *
-hb_buffer_get_empty (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<div class="refsect3">
-<a name="idp22182768"></a><h4>Returns</h4>
-<p>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-get-flags"></a><h3>hb_buffer_get_flags ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-flags-t" title="enum hb_buffer_flags_t"><span class="returnvalue">hb_buffer_flags_t</span></a>
-hb_buffer_get_flags (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22191968"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp22199472"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-get-glyph-infos"></a><h3>hb_buffer_get_glyph_infos ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-buffer.html#hb-glyph-info-t"><span class="returnvalue">hb_glyph_info_t</span></a> *
-hb_buffer_get_glyph_infos (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code>unsigned <span class="type">int</span> *length</code></em>);</pre>
-<p>Returns buffer glyph information array. Returned pointer
-is valid as long as buffer contents are not modified.</p>
-<div class="refsect3">
-<a name="idp22209216"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>length</p></td>
-<td class="parameter_description"><p> output array length. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp22220048"></a><h4>Returns</h4>
-<p> buffer glyph information array. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=length]</span></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-get-glyph-positions"></a><h3>hb_buffer_get_glyph_positions ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-buffer.html#hb-glyph-position-t"><span class="returnvalue">hb_glyph_position_t</span></a> *
-hb_buffer_get_glyph_positions (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code>unsigned <span class="type">int</span> *length</code></em>);</pre>
-<p>Returns buffer glyph position array. Returned pointer
-is valid as long as buffer contents are not modified.</p>
-<div class="refsect3">
-<a name="idp22231760"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>length</p></td>
-<td class="parameter_description"><p> output length. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp22242592"></a><h4>Returns</h4>
-<p> buffer glyph position array. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=length]</span></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-get-language"></a><h3>hb_buffer_get_language ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-language-t"><span class="returnvalue">hb_language_t</span></a>
-hb_buffer_get_language (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22252224"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp22259728"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-get-length"></a><h3>hb_buffer_get_length ()</h3>
-<pre class="programlisting">unsigned <span class="returnvalue">int</span>
-hb_buffer_get_length (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<p>Returns the number of items in the buffer.</p>
-<div class="refsect3">
-<a name="idp22268096"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp22275600"></a><h4>Returns</h4>
-<p> buffer length.</p>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-get-replacement-codepoint"></a><h3>hb_buffer_get_replacement_codepoint ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="returnvalue">hb_codepoint_t</span></a>
-hb_buffer_get_replacement_codepoint (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-get-script"></a><h3>hb_buffer_get_script ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="returnvalue">hb_script_t</span></a>
-hb_buffer_get_script (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22290352"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp22297856"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-get-segment-properties"></a><h3>hb_buffer_get_segment_properties ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_get_segment_properties (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> *props</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22307024"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-get-unicode-funcs"></a><h3>hb_buffer_get_unicode_funcs ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="returnvalue">hb_unicode_funcs_t</span></a> *
-hb_buffer_get_unicode_funcs (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22321056"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp22328560"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-get-user-data"></a><h3>hb_buffer_get_user_data ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> *
-hb_buffer_get_user_data (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-user-data-key-t"><span class="type">hb_user_data_key_t</span></a> *key</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22337728"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp22345232"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-guess-segment-properties"></a><h3>hb_buffer_guess_segment_properties ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_guess_segment_properties (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<p>Sets unset buffer segment properties based on buffer Unicode
-contents. If buffer is not empty, it must have content type
-<a class="link" href="harfbuzz-hb-buffer.html#HB-BUFFER-CONTENT-TYPE-UNICODE:CAPS"><code class="literal">HB_BUFFER_CONTENT_TYPE_UNICODE</code></a>.</p>
-<p>If buffer script is not set (ie. is <a class="link" href="harfbuzz-hb-common.html#HB-SCRIPT-INVALID:CAPS"><code class="literal">HB_SCRIPT_INVALID</code></a>), it
-will be set to the Unicode script of the first character in
-the buffer that has a script other than <a class="link" href="harfbuzz-hb-common.html#HB-SCRIPT-COMMON:CAPS"><code class="literal">HB_SCRIPT_COMMON</code></a>,
-<a class="link" href="harfbuzz-hb-common.html#HB-SCRIPT-INHERITED:CAPS"><code class="literal">HB_SCRIPT_INHERITED</code></a>, and <a class="link" href="harfbuzz-hb-common.html#HB-SCRIPT-UNKNOWN:CAPS"><code class="literal">HB_SCRIPT_UNKNOWN</code></a>.</p>
-<p>Next, if buffer direction is not set (ie. is <a class="link" href="harfbuzz-hb-common.html#HB-DIRECTION-INVALID:CAPS"><code class="literal">HB_DIRECTION_INVALID</code></a>),
-it will be set to the natural horizontal direction of the
-buffer script as returned by <a class="link" href="harfbuzz-hb-common.html#hb-script-get-horizontal-direction" title="hb_script_get_horizontal_direction ()"><code class="function">hb_script_get_horizontal_direction()</code></a>.</p>
-<p>Finally, if buffer language is not set (ie. is <a class="link" href="harfbuzz-hb-common.html#HB-LANGUAGE-INVALID:CAPS" title="HB_LANGUAGE_INVALID"><code class="literal">HB_LANGUAGE_INVALID</code></a>),
-it will be set to the process's default language as returned by
-<a class="link" href="harfbuzz-hb-common.html#hb-language-get-default" title="hb_language_get_default ()"><code class="function">hb_language_get_default()</code></a>. This may change in the future by
-taking buffer script into consideration when choosing a language.</p>
-<div class="refsect3">
-<a name="idp22365040"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-normalize-glyphs"></a><h3>hb_buffer_normalize_glyphs ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_normalize_glyphs (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22379072"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-pre-allocate"></a><h3>hb_buffer_pre_allocate ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
-hb_buffer_pre_allocate (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code>unsigned <span class="type">int</span> size</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22394624"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp22402128"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-reference"></a><h3>hb_buffer_reference ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="returnvalue">hb_buffer_t</span></a> *
-hb_buffer_reference (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22409920"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp22417424"></a><h4>Returns</h4>
-<p>. </p>
-<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-reset"></a><h3>hb_buffer_reset ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_reset (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22426624"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-reverse"></a><h3>hb_buffer_reverse ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_reverse (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<p>Reverses buffer contents.</p>
-<div class="refsect3">
-<a name="idp22441088"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-reverse-clusters"></a><h3>hb_buffer_reverse_clusters ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_reverse_clusters (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>);</pre>
-<p>Reverses buffer clusters. That is, the buffer contents are
-reversed, then each cluster (consecutive items having the
-same cluster number) are reversed again.</p>
-<div class="refsect3">
-<a name="idp22455728"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-serialize-format-from-string"></a><h3>hb_buffer_serialize_format_from_string ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t"><span class="returnvalue">hb_buffer_serialize_format_t</span></a>
-hb_buffer_serialize_format_from_string
- (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>,
- <em class="parameter"><code><span class="type">int</span> len</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22471280"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-serialize-format-to-string"></a><h3>hb_buffer_serialize_format_to_string ()</h3>
-<pre class="programlisting">const <span class="returnvalue">char</span> *
-hb_buffer_serialize_format_to_string (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t"><span class="type">hb_buffer_serialize_format_t</span></a> format</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22479216"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-serialize-glyphs"></a><h3>hb_buffer_serialize_glyphs ()</h3>
-<pre class="programlisting">unsigned <span class="returnvalue">int</span>
-hb_buffer_serialize_glyphs (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code>unsigned <span class="type">int</span> start</code></em>,
- <em class="parameter"><code>unsigned <span class="type">int</span> end</code></em>,
- <em class="parameter"><code><span class="type">char</span> *buf</code></em>,
- <em class="parameter"><code>unsigned <span class="type">int</span> buf_size</code></em>,
- <em class="parameter"><code>unsigned <span class="type">int</span> *buf_consumed</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-format-t" title="enum hb_buffer_serialize_format_t"><span class="type">hb_buffer_serialize_format_t</span></a> format</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-serialize-flags-t" title="enum hb_buffer_serialize_flags_t"><span class="type">hb_buffer_serialize_flags_t</span></a> flags</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22498736"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>buf</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=buf_size]</span></td>
-</tr>
-<tr>
-<td class="parameter_name"><p>buf_consumed</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp22512896"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-serialize-list-formats"></a><h3>hb_buffer_serialize_list_formats ()</h3>
-<pre class="programlisting">const <span class="returnvalue">char</span> **
-hb_buffer_serialize_list_formats (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<div class="refsect3">
-<a name="idp22520288"></a><h4>Returns</h4>
-<p>. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-set-content-type"></a><h3>hb_buffer_set_content_type ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_set_content_type (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-content-type-t" title="enum hb_buffer_content_type_t"><span class="type">hb_buffer_content_type_t</span></a> content_type</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22530864"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-set-direction"></a><h3>hb_buffer_set_direction ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_set_direction (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-direction-t" title="enum hb_direction_t"><span class="type">hb_direction_t</span></a> direction</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22546272"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-set-flags"></a><h3>hb_buffer_set_flags ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_set_flags (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-flags-t" title="enum hb_buffer_flags_t"><span class="type">hb_buffer_flags_t</span></a> flags</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22561680"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-set-language"></a><h3>hb_buffer_set_language ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_set_language (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-language-t"><span class="type">hb_language_t</span></a> language</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22577088"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-set-length"></a><h3>hb_buffer_set_length ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
-hb_buffer_set_length (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code>unsigned <span class="type">int</span> length</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22592640"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp22600400"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-set-replacement-codepoint"></a><h3>hb_buffer_set_replacement_codepoint ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_set_replacement_codepoint (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> replacement</code></em>);</pre>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-set-script"></a><h3>hb_buffer_set_script ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_set_script (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> script</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22621216"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-set-segment-properties"></a><h3>hb_buffer_set_segment_properties ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_set_segment_properties (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code>const <a class="link" href="harfbuzz-hb-buffer.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> *props</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22639536"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-set-unicode-funcs"></a><h3>hb_buffer_set_unicode_funcs ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_buffer_set_unicode_funcs (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"><span class="type">hb_unicode_funcs_t</span></a> *unicode_funcs</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22657648"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-set-user-data"></a><h3>hb_buffer_set_user_data ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
-hb_buffer_set_user_data (<em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-user-data-key-t"><span class="type">hb_user_data_key_t</span></a> *key</code></em>,
- <em class="parameter"><code><span class="type">void</span> *data</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="type">hb_bool_t</span></a> replace</code></em>);</pre>
-<div class="refsect3">
-<a name="idp22680784"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp22689184"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-segment-properties-equal"></a><h3>hb_segment_properties_equal ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
-hb_segment_properties_equal (<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-buffer.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> *a</code></em>,
- <em class="parameter"><code>const <a class="link" href="harfbuzz-hb-buffer.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> *b</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp22700656"></a><h4>Returns</h4>
-<p></p>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-segment-properties-hash"></a><h3>hb_segment_properties_hash ()</h3>
-<pre class="programlisting">unsigned <span class="returnvalue">int</span>
-hb_segment_properties_hash (<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-buffer.html#hb-segment-properties-t"><span class="type">hb_segment_properties_t</span></a> *p</code></em>);</pre>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp22709792"></a><h4>Returns</h4>
-<p></p>
-</div>
-</div>
-</div>
-<div class="refsect1">
-<a name="harfbuzz-hb-buffer.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="HB-SEGMENT-PROPERTIES-DEFAULT:CAPS"></a><h3>HB_SEGMENT_PROPERTIES_DEFAULT</h3>
-<pre class="programlisting">#define HB_SEGMENT_PROPERTIES_DEFAULT</pre>
-<p>
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-content-type-t"></a><h3>enum hb_buffer_content_type_t</h3>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp22721776"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="enum_member_name"><p><a name="HB-BUFFER-CONTENT-TYPE-INVALID:CAPS"></a>HB_BUFFER_CONTENT_TYPE_INVALID</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="HB-BUFFER-CONTENT-TYPE-UNICODE:CAPS"></a>HB_BUFFER_CONTENT_TYPE_UNICODE</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="HB-BUFFER-CONTENT-TYPE-GLYPHS:CAPS"></a>HB_BUFFER_CONTENT_TYPE_GLYPHS</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-flags-t"></a><h3>enum hb_buffer_flags_t</h3>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp22740960"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="enum_member_name"><p><a name="HB-BUFFER-FLAG-DEFAULT:CAPS"></a>HB_BUFFER_FLAG_DEFAULT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="HB-BUFFER-FLAG-BOT:CAPS"></a>HB_BUFFER_FLAG_BOT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="HB-BUFFER-FLAG-EOT:CAPS"></a>HB_BUFFER_FLAG_EOT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="HB-BUFFER-FLAG-PRESERVE-DEFAULT-IGNORABLES:CAPS"></a>HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-serialize-flags-t"></a><h3>enum hb_buffer_serialize_flags_t</h3>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp22763504"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="enum_member_name"><p><a name="HB-BUFFER-SERIALIZE-FLAG-DEFAULT:CAPS"></a>HB_BUFFER_SERIALIZE_FLAG_DEFAULT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="HB-BUFFER-SERIALIZE-FLAG-NO-CLUSTERS:CAPS"></a>HB_BUFFER_SERIALIZE_FLAG_NO_CLUSTERS</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="HB-BUFFER-SERIALIZE-FLAG-NO-POSITIONS:CAPS"></a>HB_BUFFER_SERIALIZE_FLAG_NO_POSITIONS</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="HB-BUFFER-SERIALIZE-FLAG-NO-GLYPH-NAMES:CAPS"></a>HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-serialize-format-t"></a><h3>enum hb_buffer_serialize_format_t</h3>
-<p>
-</p>
-<div class="refsect3">
-<a name="idp22786240"></a><h4>Members</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="enum_member_name"><p><a name="HB-BUFFER-SERIALIZE-FORMAT-TEXT:CAPS"></a>HB_BUFFER_SERIALIZE_FORMAT_TEXT</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="HB-BUFFER-SERIALIZE-FORMAT-JSON:CAPS"></a>HB_BUFFER_SERIALIZE_FORMAT_JSON</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="HB-BUFFER-SERIALIZE-FORMAT-INVALID:CAPS"></a>HB_BUFFER_SERIALIZE_FORMAT_INVALID</p></td>
-<td class="enum_member_description"> </td>
-<td class="enum_member_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-buffer-t"></a><h3>hb_buffer_t</h3>
-<pre class="programlisting">typedef struct hb_buffer_t hb_buffer_t;
-</pre>
-<p>
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-glyph-info-t-struct"></a><h3>hb_glyph_info_t</h3>
-<pre class="programlisting">typedef struct {
- hb_codepoint_t codepoint;
- hb_mask_t mask;
- uint32_t cluster;
-} hb_glyph_info_t;
-</pre>
-<p>
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-glyph-position-t-struct"></a><h3>hb_glyph_position_t</h3>
-<pre class="programlisting">typedef struct {
- hb_position_t x_advance;
- hb_position_t y_advance;
- hb_position_t x_offset;
- hb_position_t y_offset;
-} hb_glyph_position_t;
-</pre>
-<p>
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-segment-properties-t-struct"></a><h3>hb_segment_properties_t</h3>
-<pre class="programlisting">typedef struct {
- hb_direction_t direction;
- hb_script_t script;
- hb_language_t language;
-} hb_segment_properties_t;
-</pre>
-<p>
-</p>
-</div>
-</div>
-</div>
-<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
-</body>
-</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-gobject.html b/docs/reference/html/harfbuzz-hb-gobject.html
deleted file mode 100644
index 2d21692..0000000
--- a/docs/reference/html/harfbuzz-hb-gobject.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-gobject</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
-<link rel="prev" href="harfbuzz-hb-coretext.html" title="hb-coretext">
-<link rel="next" href="object-tree.html" title="Object Hierarchy">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
-<link rel="stylesheet" href="style.css" type="text/css">
-</head>
-<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
- <a href="#harfbuzz-hb-gobject.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="harfbuzz-hb-coretext.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="object-tree.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
-<div class="refentry">
-<a name="harfbuzz-hb-gobject"></a><div class="titlepage"></div>
-<div class="refnamediv"><table width="100%"><tr>
-<td valign="top">
-<h2><span class="refentrytitle"><a name="harfbuzz-hb-gobject.top_of_page"></a>hb-gobject</span></h2>
-<p>hb-gobject</p>
-</td>
-<td class="gallery_image" valign="top" align="right"></td>
-</tr></table></div>
-<div class="refsect1">
-<a name="harfbuzz-hb-gobject.description"></a><h2>Description</h2>
-<p>
-</p>
-</div>
-<div class="refsect1">
-<a name="harfbuzz-hb-gobject.functions_details"></a><h2>Functions</h2>
-</div>
-<div class="refsect1">
-<a name="harfbuzz-hb-gobject.other_details"></a><h2>Types and Values</h2>
-</div>
-</div>
-<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
-</body>
-</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz-hb-shape.html b/docs/reference/html/harfbuzz-hb-shape.html
deleted file mode 100644
index c055347..0000000
--- a/docs/reference/html/harfbuzz-hb-shape.html
+++ /dev/null
@@ -1,286 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>hb-shape</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="up" href="ch01.html" title="[Insert title here]">
-<link rel="prev" href="harfbuzz-hb-font.html" title="hb-font">
-<link rel="next" href="harfbuzz-hb-version.html" title="hb-version">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
-<link rel="stylesheet" href="style.css" type="text/css">
-</head>
-<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
- <a href="#harfbuzz-hb-shape.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
- <a href="#harfbuzz-hb-shape.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="harfbuzz-hb-font.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="harfbuzz-hb-version.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
-<div class="refentry">
-<a name="harfbuzz-hb-shape"></a><div class="titlepage"></div>
-<div class="refnamediv"><table width="100%"><tr>
-<td valign="top">
-<h2><span class="refentrytitle"><a name="harfbuzz-hb-shape.top_of_page"></a>hb-shape</span></h2>
-<p>hb-shape</p>
-</td>
-<td class="gallery_image" valign="top" align="right"></td>
-</tr></table></div>
-<div class="refsect1">
-<a name="harfbuzz-hb-shape.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-shape.html#hb-feature-from-string" title="hb_feature_from_string ()">hb_feature_from_string</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-shape.html#hb-feature-to-string" title="hb_feature_to_string ()">hb_feature_to_string</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-shape.html#hb-shape" title="hb_shape ()">hb_shape</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-shape.html#hb-shape-full" title="hb_shape_full ()">hb_shape_full</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">const <span class="returnvalue">char</span> **
-</td>
-<td class="function_name">
-<a class="link" href="harfbuzz-hb-shape.html#hb-shape-list-shapers" title="hb_shape_list_shapers ()">hb_shape_list_shapers</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<a name="hb-feature-t"></a><div class="refsect1">
-<a name="harfbuzz-hb-shape.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody><tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="harfbuzz-hb-shape.html#hb-feature-t-struct" title="hb_feature_t">hb_feature_t</a></td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="harfbuzz-hb-shape.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen"> GBoxed
- <span class="lineart">╰──</span> hb_feature_t
-</pre>
-</div>
-<div class="refsect1">
-<a name="harfbuzz-hb-shape.description"></a><h2>Description</h2>
-<p>
-</p>
-</div>
-<div class="refsect1">
-<a name="harfbuzz-hb-shape.functions_details"></a><h2>Functions</h2>
-<div class="refsect2">
-<a name="hb-feature-from-string"></a><h3>hb_feature_from_string ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
-hb_feature_from_string (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>,
- <em class="parameter"><code><span class="type">int</span> len</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-shape.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *feature</code></em>);</pre>
-<div class="refsect3">
-<a name="idp18031264"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>str</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=len]</span></td>
-</tr>
-<tr>
-<td class="parameter_name"><p>feature</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][optional]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp17491264"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-feature-to-string"></a><h3>hb_feature_to_string ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_feature_to_string (<em class="parameter"><code><a class="link" href="harfbuzz-hb-shape.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *feature</code></em>,
- <em class="parameter"><code><span class="type">char</span> *buf</code></em>,
- <em class="parameter"><code>unsigned <span class="type">int</span> size</code></em>);</pre>
-<div class="refsect3">
-<a name="idp16212496"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>buf</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=size]</span></td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-shape"></a><h3>hb_shape ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-hb_shape (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code>const <a class="link" href="harfbuzz-hb-shape.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *features</code></em>,
- <em class="parameter"><code>unsigned <span class="type">int</span> num_features</code></em>);</pre>
-<div class="refsect3">
-<a name="idp20849744"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>font</p></td>
-<td class="parameter_description"><p>a font.</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>features</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=num_features]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-shape-full"></a><h3>hb_shape_full ()</h3>
-<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
-hb_shape_full (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
- <em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
- <em class="parameter"><code>const <a class="link" href="harfbuzz-hb-shape.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *features</code></em>,
- <em class="parameter"><code>unsigned <span class="type">int</span> num_features</code></em>,
- <em class="parameter"><code>const <span class="type">char</span> * const *shaper_list</code></em>);</pre>
-<div class="refsect3">
-<a name="idp20668592"></a><h4>Parameters</h4>
-<div class="informaltable"><table width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>font</p></td>
-<td class="parameter_description"><p>a font.</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>buffer</p></td>
-<td class="parameter_description"><p>a buffer.</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>features</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=num_features]</span></td>
-</tr>
-<tr>
-<td class="parameter_name"><p>shaper_list</p></td>
-<td class="parameter_description"><p>. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1]</span></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="idp24215408"></a><h4>Returns</h4>
-<p></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="hb-shape-list-shapers"></a><h3>hb_shape_list_shapers ()</h3>
-<pre class="programlisting">const <span class="returnvalue">char</span> **
-hb_shape_list_shapers (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<div class="refsect3">
-<a name="idp24224032"></a><h4>Returns</h4>
-<p>. </p>
-<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
-</div>
-<p class="since">Since 1.0</p>
-</div>
-</div>
-<div class="refsect1">
-<a name="harfbuzz-hb-shape.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="hb-feature-t-struct"></a><h3>hb_feature_t</h3>
-<pre class="programlisting">typedef struct {
- hb_tag_t tag;
- uint32_t value;
- unsigned int start;
- unsigned int end;
-} hb_feature_t;
-</pre>
-<p>
-</p>
-</div>
-</div>
-</div>
-<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
-</body>
-</html> \ No newline at end of file
diff --git a/docs/reference/html/harfbuzz.devhelp2 b/docs/reference/html/harfbuzz.devhelp2
deleted file mode 100644
index 10bb40c..0000000
--- a/docs/reference/html/harfbuzz.devhelp2
+++ /dev/null
@@ -1,378 +0,0 @@
-<?xml version="1.0" encoding="utf-8" standalone="no"?>
-<!DOCTYPE book PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "">
-<book xmlns="http://www.devhelp.net/book" title="HarfBuzz Reference Manual" link="index.html" author="" name="harfbuzz" version="2" language="c">
- <chapters>
- <sub name="[Insert title here]" link="ch01.html">
- <sub name="hb" link="harfbuzz-hb.html"/>
- <sub name="hb-common" link="harfbuzz-hb-common.html"/>
- <sub name="hb-unicode" link="harfbuzz-hb-unicode.html"/>
- <sub name="hb-buffer" link="harfbuzz-hb-buffer.html"/>
- <sub name="hb-blob" link="harfbuzz-hb-blob.html"/>
- <sub name="hb-face" link="harfbuzz-hb-face.html"/>
- <sub name="hb-font" link="harfbuzz-hb-font.html"/>
- <sub name="hb-shape" link="harfbuzz-hb-shape.html"/>
- <sub name="hb-version" link="harfbuzz-hb-version.html"/>
- <sub name="hb-deprecated" link="harfbuzz-hb-deprecated.html"/>
- <sub name="hb-set" link="harfbuzz-hb-set.html"/>
- <sub name="hb-ot" link="harfbuzz-hb-ot.html"/>
- <sub name="hb-ot-layout" link="harfbuzz-hb-ot-layout.html"/>
- <sub name="hb-ot-tag" link="harfbuzz-hb-ot-tag.html"/>
- <sub name="hb-shape-plan" link="harfbuzz-hb-shape-plan.html"/>
- <sub name="hb-glib" link="harfbuzz-hb-glib.html"/>
- <sub name="hb-icu" link="harfbuzz-hb-icu.html"/>
- <sub name="hb-ft" link="harfbuzz-hb-ft.html"/>
- <sub name="hb-graphite2" link="harfbuzz-hb-graphite2.html"/>
- <sub name="hb-uniscribe" link="harfbuzz-hb-uniscribe.html"/>
- <sub name="hb-coretext" link="harfbuzz-hb-coretext.html"/>
- <sub name="hb-gobject" link="harfbuzz-hb-gobject.html"/>
- </sub>
- <sub name="Object Hierarchy" link="object-tree.html"/>
- <sub name="API Index" link="api-index-full.html"/>
- <sub name="Index of deprecated API" link="deprecated-api-index.html"/>
- <sub name="Annotation Glossary" link="annotation-glossary.html"/>
- </chapters>
- <functions>
- <keyword type="macro" name="HB_DIRECTION_REVERSE()" link="harfbuzz-hb-common.html#HB-DIRECTION-REVERSE:CAPS"/>
- <keyword type="macro" name="HB_LANGUAGE_INVALID" link="harfbuzz-hb-common.html#HB-LANGUAGE-INVALID:CAPS"/>
- <keyword type="macro" name="HB_TAG()" link="harfbuzz-hb-common.html#HB-TAG:CAPS"/>
- <keyword type="macro" name="HB_UNTAG()" link="harfbuzz-hb-common.html#HB-UNTAG:CAPS"/>
- <keyword type="function" name="hb_destroy_func_t ()" link="harfbuzz-hb-common.html#hb-destroy-func-t"/>
- <keyword type="function" name="hb_direction_from_string ()" link="harfbuzz-hb-common.html#hb-direction-from-string" since="1.0"/>
- <keyword type="function" name="hb_direction_to_string ()" link="harfbuzz-hb-common.html#hb-direction-to-string" since="1.0"/>
- <keyword type="function" name="hb_language_from_string ()" link="harfbuzz-hb-common.html#hb-language-from-string" since="1.0"/>
- <keyword type="function" name="hb_language_get_default ()" link="harfbuzz-hb-common.html#hb-language-get-default" since="1.0"/>
- <keyword type="function" name="hb_language_to_string ()" link="harfbuzz-hb-common.html#hb-language-to-string" since="1.0"/>
- <keyword type="function" name="hb_script_from_iso15924_tag ()" link="harfbuzz-hb-common.html#hb-script-from-iso15924-tag" since="1.0"/>
- <keyword type="function" name="hb_script_from_string ()" link="harfbuzz-hb-common.html#hb-script-from-string" since="1.0"/>
- <keyword type="function" name="hb_script_get_horizontal_direction ()" link="harfbuzz-hb-common.html#hb-script-get-horizontal-direction" since="1.0"/>
- <keyword type="function" name="hb_script_to_iso15924_tag ()" link="harfbuzz-hb-common.html#hb-script-to-iso15924-tag" since="1.0"/>
- <keyword type="function" name="hb_tag_from_string ()" link="harfbuzz-hb-common.html#hb-tag-from-string" since="1.0"/>
- <keyword type="function" name="hb_tag_to_string ()" link="harfbuzz-hb-common.html#hb-tag-to-string" since="1.0"/>
- <keyword type="macro" name="HB_DIRECTION_IS_BACKWARD()" link="harfbuzz-hb-common.html#HB-DIRECTION-IS-BACKWARD:CAPS"/>
- <keyword type="macro" name="HB_DIRECTION_IS_FORWARD()" link="harfbuzz-hb-common.html#HB-DIRECTION-IS-FORWARD:CAPS"/>
- <keyword type="macro" name="HB_DIRECTION_IS_HORIZONTAL()" link="harfbuzz-hb-common.html#HB-DIRECTION-IS-HORIZONTAL:CAPS"/>
- <keyword type="macro" name="HB_DIRECTION_IS_VALID()" link="harfbuzz-hb-common.html#HB-DIRECTION-IS-VALID:CAPS"/>
- <keyword type="macro" name="HB_DIRECTION_IS_VERTICAL()" link="harfbuzz-hb-common.html#HB-DIRECTION-IS-VERTICAL:CAPS"/>
- <keyword type="macro" name="HB_TAG_NONE" link="harfbuzz-hb-common.html#HB-TAG-NONE:CAPS"/>
- <keyword type="macro" name="HB_TAG_MAX" link="harfbuzz-hb-common.html#HB-TAG-MAX:CAPS"/>
- <keyword type="typedef" name="hb_bool_t" link="harfbuzz-hb-common.html#hb-bool-t"/>
- <keyword type="typedef" name="hb_codepoint_t" link="harfbuzz-hb-common.html#hb-codepoint-t"/>
- <keyword type="enum" name="enum hb_direction_t" link="harfbuzz-hb-common.html#hb-direction-t"/>
- <keyword type="typedef" name="hb_language_t" link="harfbuzz-hb-common.html#hb-language-t"/>
- <keyword type="typedef" name="hb_mask_t" link="harfbuzz-hb-common.html#hb-mask-t"/>
- <keyword type="typedef" name="hb_position_t" link="harfbuzz-hb-common.html#hb-position-t"/>
- <keyword type="enum" name="enum hb_script_t" link="harfbuzz-hb-common.html#hb-script-t"/>
- <keyword type="typedef" name="hb_tag_t" link="harfbuzz-hb-common.html#hb-tag-t"/>
- <keyword type="struct" name="hb_user_data_key_t" link="harfbuzz-hb-common.html#hb-user-data-key-t-struct"/>
- <keyword type="union" name="hb_var_int_t" link="harfbuzz-hb-common.html#hb-var-int-t"/>
- <keyword type="macro" name="HB_UNICODE_MAX_DECOMPOSITION_LEN" link="harfbuzz-hb-unicode.html#HB-UNICODE-MAX-DECOMPOSITION-LEN:CAPS"/>
- <keyword type="function" name="hb_unicode_combining_class ()" link="harfbuzz-hb-unicode.html#hb-unicode-combining-class"/>
- <keyword type="function" name="hb_unicode_combining_class_func_t ()" link="harfbuzz-hb-unicode.html#hb-unicode-combining-class-func-t"/>
- <keyword type="function" name="hb_unicode_compose ()" link="harfbuzz-hb-unicode.html#hb-unicode-compose" since="1.0"/>
- <keyword type="function" name="hb_unicode_compose_func_t ()" link="harfbuzz-hb-unicode.html#hb-unicode-compose-func-t"/>
- <keyword type="function" name="hb_unicode_decompose ()" link="harfbuzz-hb-unicode.html#hb-unicode-decompose" since="1.0"/>
- <keyword type="function" name="hb_unicode_decompose_compatibility ()" link="harfbuzz-hb-unicode.html#hb-unicode-decompose-compatibility" since="1.0"/>
- <keyword type="function" name="hb_unicode_decompose_func_t ()" link="harfbuzz-hb-unicode.html#hb-unicode-decompose-func-t"/>
- <keyword type="function" name="hb_unicode_eastasian_width ()" link="harfbuzz-hb-unicode.html#hb-unicode-eastasian-width"/>
- <keyword type="function" name="hb_unicode_funcs_create ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-create"/>
- <keyword type="function" name="hb_unicode_funcs_destroy ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-destroy" since="1.0"/>
- <keyword type="function" name="hb_unicode_funcs_get_default ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-get-default"/>
- <keyword type="function" name="hb_unicode_funcs_get_empty ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-get-empty" since="1.0"/>
- <keyword type="function" name="hb_unicode_funcs_get_parent ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-get-parent" since="1.0"/>
- <keyword type="function" name="hb_unicode_funcs_get_user_data ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-get-user-data" since="1.0"/>
- <keyword type="function" name="hb_unicode_funcs_is_immutable ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-is-immutable" since="1.0"/>
- <keyword type="function" name="hb_unicode_funcs_make_immutable ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-make-immutable" since="1.0"/>
- <keyword type="function" name="hb_unicode_funcs_reference ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-reference" since="1.0"/>
- <keyword type="function" name="hb_unicode_funcs_set_combining_class_func ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-combining-class-func" since="1.0"/>
- <keyword type="function" name="hb_unicode_funcs_set_compose_func ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-compose-func" since="1.0"/>
- <keyword type="function" name="hb_unicode_funcs_set_decompose_compatibility_func ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-decompose-compatibility-func" since="1.0"/>
- <keyword type="function" name="hb_unicode_funcs_set_decompose_func ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-decompose-func" since="1.0"/>
- <keyword type="function" name="hb_unicode_funcs_set_eastasian_width_func ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-eastasian-width-func" since="1.0"/>
- <keyword type="function" name="hb_unicode_funcs_set_general_category_func ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-general-category-func" since="1.0"/>
- <keyword type="function" name="hb_unicode_funcs_set_mirroring_func ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-mirroring-func" since="1.0"/>
- <keyword type="function" name="hb_unicode_funcs_set_script_func ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-script-func" since="1.0"/>
- <keyword type="function" name="hb_unicode_funcs_set_user_data ()" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-set-user-data" since="1.0"/>
- <keyword type="function" name="hb_unicode_general_category ()" link="harfbuzz-hb-unicode.html#hb-unicode-general-category"/>
- <keyword type="function" name="hb_unicode_general_category_func_t ()" link="harfbuzz-hb-unicode.html#hb-unicode-general-category-func-t"/>
- <keyword type="function" name="hb_unicode_mirroring ()" link="harfbuzz-hb-unicode.html#hb-unicode-mirroring"/>
- <keyword type="function" name="hb_unicode_mirroring_func_t ()" link="harfbuzz-hb-unicode.html#hb-unicode-mirroring-func-t"/>
- <keyword type="function" name="hb_unicode_script ()" link="harfbuzz-hb-unicode.html#hb-unicode-script"/>
- <keyword type="function" name="hb_unicode_script_func_t ()" link="harfbuzz-hb-unicode.html#hb-unicode-script-func-t"/>
- <keyword type="enum" name="enum hb_unicode_combining_class_t" link="harfbuzz-hb-unicode.html#hb-unicode-combining-class-t"/>
- <keyword type="typedef" name="hb_unicode_funcs_t" link="harfbuzz-hb-unicode.html#hb-unicode-funcs-t"/>
- <keyword type="enum" name="enum hb_unicode_general_category_t" link="harfbuzz-hb-unicode.html#hb-unicode-general-category-t"/>
- <keyword type="function" name="hb_buffer_add ()" link="harfbuzz-hb-buffer.html#hb-buffer-add" since="1.0"/>
- <keyword type="function" name="hb_buffer_add_utf16 ()" link="harfbuzz-hb-buffer.html#hb-buffer-add-utf16" since="1.0"/>
- <keyword type="function" name="hb_buffer_add_utf32 ()" link="harfbuzz-hb-buffer.html#hb-buffer-add-utf32" since="1.0"/>
- <keyword type="function" name="hb_buffer_add_utf8 ()" link="harfbuzz-hb-buffer.html#hb-buffer-add-utf8" since="1.0"/>
- <keyword type="function" name="hb_buffer_add_codepoints ()" link="harfbuzz-hb-buffer.html#hb-buffer-add-codepoints" since="1.0"/>
- <keyword type="function" name="hb_buffer_allocation_successful ()" link="harfbuzz-hb-buffer.html#hb-buffer-allocation-successful" since="1.0"/>
- <keyword type="function" name="hb_buffer_clear_contents ()" link="harfbuzz-hb-buffer.html#hb-buffer-clear-contents" since="1.0"/>
- <keyword type="function" name="hb_buffer_create ()" link="harfbuzz-hb-buffer.html#hb-buffer-create"/>
- <keyword type="function" name="hb_buffer_deserialize_glyphs ()" link="harfbuzz-hb-buffer.html#hb-buffer-deserialize-glyphs" since="1.0"/>
- <keyword type="function" name="hb_buffer_destroy ()" link="harfbuzz-hb-buffer.html#hb-buffer-destroy" since="1.0"/>
- <keyword type="function" name="hb_buffer_get_content_type ()" link="harfbuzz-hb-buffer.html#hb-buffer-get-content-type" since="1.0"/>
- <keyword type="function" name="hb_buffer_get_direction ()" link="harfbuzz-hb-buffer.html#hb-buffer-get-direction" since="1.0"/>
- <keyword type="function" name="hb_buffer_get_empty ()" link="harfbuzz-hb-buffer.html#hb-buffer-get-empty" since="1.0"/>
- <keyword type="function" name="hb_buffer_get_flags ()" link="harfbuzz-hb-buffer.html#hb-buffer-get-flags" since="1.0"/>
- <keyword type="function" name="hb_buffer_get_glyph_infos ()" link="harfbuzz-hb-buffer.html#hb-buffer-get-glyph-infos" since="1.0"/>
- <keyword type="function" name="hb_buffer_get_glyph_positions ()" link="harfbuzz-hb-buffer.html#hb-buffer-get-glyph-positions" since="1.0"/>
- <keyword type="function" name="hb_buffer_get_language ()" link="harfbuzz-hb-buffer.html#hb-buffer-get-language" since="1.0"/>
- <keyword type="function" name="hb_buffer_get_length ()" link="harfbuzz-hb-buffer.html#hb-buffer-get-length" since="1.0"/>
- <keyword type="function" name="hb_buffer_get_replacement_codepoint ()" link="harfbuzz-hb-buffer.html#hb-buffer-get-replacement-codepoint" since="1.0"/>
- <keyword type="function" name="hb_buffer_get_script ()" link="harfbuzz-hb-buffer.html#hb-buffer-get-script" since="1.0"/>
- <keyword type="function" name="hb_buffer_get_segment_properties ()" link="harfbuzz-hb-buffer.html#hb-buffer-get-segment-properties" since="1.0"/>
- <keyword type="function" name="hb_buffer_get_unicode_funcs ()" link="harfbuzz-hb-buffer.html#hb-buffer-get-unicode-funcs" since="1.0"/>
- <keyword type="function" name="hb_buffer_get_user_data ()" link="harfbuzz-hb-buffer.html#hb-buffer-get-user-data" since="1.0"/>
- <keyword type="function" name="hb_buffer_guess_segment_properties ()" link="harfbuzz-hb-buffer.html#hb-buffer-guess-segment-properties" since="1.0"/>
- <keyword type="function" name="hb_buffer_normalize_glyphs ()" link="harfbuzz-hb-buffer.html#hb-buffer-normalize-glyphs" since="1.0"/>
- <keyword type="function" name="hb_buffer_pre_allocate ()" link="harfbuzz-hb-buffer.html#hb-buffer-pre-allocate" since="1.0"/>
- <keyword type="function" name="hb_buffer_reference ()" link="harfbuzz-hb-buffer.html#hb-buffer-reference" since="1.0"/>
- <keyword type="function" name="hb_buffer_reset ()" link="harfbuzz-hb-buffer.html#hb-buffer-reset" since="1.0"/>
- <keyword type="function" name="hb_buffer_reverse ()" link="harfbuzz-hb-buffer.html#hb-buffer-reverse" since="1.0"/>
- <keyword type="function" name="hb_buffer_reverse_clusters ()" link="harfbuzz-hb-buffer.html#hb-buffer-reverse-clusters" since="1.0"/>
- <keyword type="function" name="hb_buffer_serialize_format_from_string ()" link="harfbuzz-hb-buffer.html#hb-buffer-serialize-format-from-string" since="1.0"/>
- <keyword type="function" name="hb_buffer_serialize_format_to_string ()" link="harfbuzz-hb-buffer.html#hb-buffer-serialize-format-to-string" since="1.0"/>
- <keyword type="function" name="hb_buffer_serialize_glyphs ()" link="harfbuzz-hb-buffer.html#hb-buffer-serialize-glyphs" since="1.0"/>
- <keyword type="function" name="hb_buffer_serialize_list_formats ()" link="harfbuzz-hb-buffer.html#hb-buffer-serialize-list-formats" since="1.0"/>
- <keyword type="function" name="hb_buffer_set_content_type ()" link="harfbuzz-hb-buffer.html#hb-buffer-set-content-type" since="1.0"/>
- <keyword type="function" name="hb_buffer_set_direction ()" link="harfbuzz-hb-buffer.html#hb-buffer-set-direction" since="1.0"/>
- <keyword type="function" name="hb_buffer_set_flags ()" link="harfbuzz-hb-buffer.html#hb-buffer-set-flags" since="1.0"/>
- <keyword type="function" name="hb_buffer_set_language ()" link="harfbuzz-hb-buffer.html#hb-buffer-set-language" since="1.0"/>
- <keyword type="function" name="hb_buffer_set_length ()" link="harfbuzz-hb-buffer.html#hb-buffer-set-length" since="1.0"/>
- <keyword type="function" name="hb_buffer_set_replacement_codepoint ()" link="harfbuzz-hb-buffer.html#hb-buffer-set-replacement-codepoint" since="1.0"/>
- <keyword type="function" name="hb_buffer_set_script ()" link="harfbuzz-hb-buffer.html#hb-buffer-set-script" since="1.0"/>
- <keyword type="function" name="hb_buffer_set_segment_properties ()" link="harfbuzz-hb-buffer.html#hb-buffer-set-segment-properties" since="1.0"/>
- <keyword type="function" name="hb_buffer_set_unicode_funcs ()" link="harfbuzz-hb-buffer.html#hb-buffer-set-unicode-funcs" since="1.0"/>
- <keyword type="function" name="hb_buffer_set_user_data ()" link="harfbuzz-hb-buffer.html#hb-buffer-set-user-data" since="1.0"/>
- <keyword type="function" name="hb_segment_properties_equal ()" link="harfbuzz-hb-buffer.html#hb-segment-properties-equal"/>
- <keyword type="function" name="hb_segment_properties_hash ()" link="harfbuzz-hb-buffer.html#hb-segment-properties-hash"/>
- <keyword type="macro" name="HB_SEGMENT_PROPERTIES_DEFAULT" link="harfbuzz-hb-buffer.html#HB-SEGMENT-PROPERTIES-DEFAULT:CAPS"/>
- <keyword type="enum" name="enum hb_buffer_content_type_t" link="harfbuzz-hb-buffer.html#hb-buffer-content-type-t"/>
- <keyword type="enum" name="enum hb_buffer_flags_t" link="harfbuzz-hb-buffer.html#hb-buffer-flags-t"/>
- <keyword type="enum" name="enum hb_buffer_serialize_flags_t" link="harfbuzz-hb-buffer.html#hb-buffer-serialize-flags-t"/>
- <keyword type="enum" name="enum hb_buffer_serialize_format_t" link="harfbuzz-hb-buffer.html#hb-buffer-serialize-format-t"/>
- <keyword type="typedef" name="hb_buffer_t" link="harfbuzz-hb-buffer.html#hb-buffer-t"/>
- <keyword type="struct" name="hb_glyph_info_t" link="harfbuzz-hb-buffer.html#hb-glyph-info-t-struct"/>
- <keyword type="struct" name="hb_glyph_position_t" link="harfbuzz-hb-buffer.html#hb-glyph-position-t-struct"/>
- <keyword type="struct" name="hb_segment_properties_t" link="harfbuzz-hb-buffer.html#hb-segment-properties-t-struct"/>
- <keyword type="function" name="hb_blob_create ()" link="harfbuzz-hb-blob.html#hb-blob-create" since="1.0"/>
- <keyword type="function" name="hb_blob_create_sub_blob ()" link="harfbuzz-hb-blob.html#hb-blob-create-sub-blob" since="1.0"/>
- <keyword type="function" name="hb_blob_destroy ()" link="harfbuzz-hb-blob.html#hb-blob-destroy" since="1.0"/>
- <keyword type="function" name="hb_blob_get_data ()" link="harfbuzz-hb-blob.html#hb-blob-get-data" since="1.0"/>
- <keyword type="function" name="hb_blob_get_data_writable ()" link="harfbuzz-hb-blob.html#hb-blob-get-data-writable" since="1.0"/>
- <keyword type="function" name="hb_blob_get_empty ()" link="harfbuzz-hb-blob.html#hb-blob-get-empty" since="1.0"/>
- <keyword type="function" name="hb_blob_get_length ()" link="harfbuzz-hb-blob.html#hb-blob-get-length" since="1.0"/>
- <keyword type="function" name="hb_blob_get_user_data ()" link="harfbuzz-hb-blob.html#hb-blob-get-user-data" since="1.0"/>
- <keyword type="function" name="hb_blob_is_immutable ()" link="harfbuzz-hb-blob.html#hb-blob-is-immutable" since="1.0"/>
- <keyword type="function" name="hb_blob_make_immutable ()" link="harfbuzz-hb-blob.html#hb-blob-make-immutable" since="1.0"/>
- <keyword type="function" name="hb_blob_reference ()" link="harfbuzz-hb-blob.html#hb-blob-reference" since="1.0"/>
- <keyword type="function" name="hb_blob_set_user_data ()" link="harfbuzz-hb-blob.html#hb-blob-set-user-data" since="1.0"/>
- <keyword type="typedef" name="hb_blob_t" link="harfbuzz-hb-blob.html#hb-blob-t"/>
- <keyword type="enum" name="enum hb_memory_mode_t" link="harfbuzz-hb-blob.html#hb-memory-mode-t"/>
- <keyword type="function" name="hb_face_create ()" link="harfbuzz-hb-face.html#hb-face-create"/>
- <keyword type="function" name="hb_face_create_for_tables ()" link="harfbuzz-hb-face.html#hb-face-create-for-tables" since="1.0"/>
- <keyword type="function" name="hb_face_destroy ()" link="harfbuzz-hb-face.html#hb-face-destroy" since="1.0"/>
- <keyword type="function" name="hb_face_get_empty ()" link="harfbuzz-hb-face.html#hb-face-get-empty" since="1.0"/>
- <keyword type="function" name="hb_face_get_glyph_count ()" link="harfbuzz-hb-face.html#hb-face-get-glyph-count" since="1.0"/>
- <keyword type="function" name="hb_face_get_index ()" link="harfbuzz-hb-face.html#hb-face-get-index" since="1.0"/>
- <keyword type="function" name="hb_face_get_upem ()" link="harfbuzz-hb-face.html#hb-face-get-upem" since="1.0"/>
- <keyword type="function" name="hb_face_get_user_data ()" link="harfbuzz-hb-face.html#hb-face-get-user-data" since="1.0"/>
- <keyword type="function" name="hb_face_is_immutable ()" link="harfbuzz-hb-face.html#hb-face-is-immutable" since="1.0"/>
- <keyword type="function" name="hb_face_make_immutable ()" link="harfbuzz-hb-face.html#hb-face-make-immutable" since="1.0"/>
- <keyword type="function" name="hb_face_reference ()" link="harfbuzz-hb-face.html#hb-face-reference" since="1.0"/>
- <keyword type="function" name="hb_face_reference_blob ()" link="harfbuzz-hb-face.html#hb-face-reference-blob" since="1.0"/>
- <keyword type="function" name="hb_face_reference_table ()" link="harfbuzz-hb-face.html#hb-face-reference-table" since="1.0"/>
- <keyword type="function" name="hb_face_set_glyph_count ()" link="harfbuzz-hb-face.html#hb-face-set-glyph-count" since="1.0"/>
- <keyword type="function" name="hb_face_set_index ()" link="harfbuzz-hb-face.html#hb-face-set-index" since="1.0"/>
- <keyword type="function" name="hb_face_set_upem ()" link="harfbuzz-hb-face.html#hb-face-set-upem" since="1.0"/>
- <keyword type="function" name="hb_face_set_user_data ()" link="harfbuzz-hb-face.html#hb-face-set-user-data" since="1.0"/>
- <keyword type="typedef" name="hb_face_t" link="harfbuzz-hb-face.html#hb-face-t"/>
- <keyword type="function" name="hb_font_add_glyph_origin_for_direction ()" link="harfbuzz-hb-font.html#hb-font-add-glyph-origin-for-direction" since="1.0"/>
- <keyword type="function" name="hb_font_create ()" link="harfbuzz-hb-font.html#hb-font-create"/>
- <keyword type="function" name="hb_font_create_sub_font ()" link="harfbuzz-hb-font.html#hb-font-create-sub-font" since="1.0"/>
- <keyword type="function" name="hb_font_destroy ()" link="harfbuzz-hb-font.html#hb-font-destroy" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_create ()" link="harfbuzz-hb-font.html#hb-font-funcs-create"/>
- <keyword type="function" name="hb_font_funcs_destroy ()" link="harfbuzz-hb-font.html#hb-font-funcs-destroy" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_get_empty ()" link="harfbuzz-hb-font.html#hb-font-funcs-get-empty" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_get_user_data ()" link="harfbuzz-hb-font.html#hb-font-funcs-get-user-data" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_is_immutable ()" link="harfbuzz-hb-font.html#hb-font-funcs-is-immutable" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_make_immutable ()" link="harfbuzz-hb-font.html#hb-font-funcs-make-immutable" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_reference ()" link="harfbuzz-hb-font.html#hb-font-funcs-reference" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_set_glyph_contour_point_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-contour-point-func" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_set_glyph_extents_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-extents-func" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_set_glyph_from_name_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-from-name-func" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_set_glyph_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-func" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_set_glyph_h_advance_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-h-advance-func" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_set_glyph_h_kerning_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-h-kerning-func" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_set_glyph_h_origin_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-h-origin-func" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_set_glyph_name_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-name-func" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_set_glyph_v_advance_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-v-advance-func" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_set_glyph_v_kerning_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-v-kerning-func" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_set_glyph_v_origin_func ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-glyph-v-origin-func" since="1.0"/>
- <keyword type="function" name="hb_font_funcs_set_user_data ()" link="harfbuzz-hb-font.html#hb-font-funcs-set-user-data" since="1.0"/>
- <keyword type="function" name="hb_font_get_empty ()" link="harfbuzz-hb-font.html#hb-font-get-empty" since="1.0"/>
- <keyword type="function" name="hb_font_get_face ()" link="harfbuzz-hb-font.html#hb-font-get-face" since="1.0"/>
- <keyword type="function" name="hb_font_get_glyph ()" link="harfbuzz-hb-font.html#hb-font-get-glyph" since="1.0"/>
- <keyword type="function" name="hb_font_get_glyph_advance_for_direction ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-advance-for-direction" since="1.0"/>
- <keyword type="function" name="hb_font_get_glyph_advance_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-advance-func-t"/>
- <keyword type="function" name="hb_font_get_glyph_contour_point ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-contour-point" since="1.0"/>
- <keyword type="function" name="hb_font_get_glyph_contour_point_for_origin ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-contour-point-for-origin" since="1.0"/>
- <keyword type="function" name="hb_font_get_glyph_contour_point_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-contour-point-func-t"/>
- <keyword type="function" name="hb_font_get_glyph_extents ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-extents" since="1.0"/>
- <keyword type="function" name="hb_font_get_glyph_extents_for_origin ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-extents-for-origin" since="1.0"/>
- <keyword type="function" name="hb_font_get_glyph_extents_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-extents-func-t"/>
- <keyword type="function" name="hb_font_get_glyph_from_name ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-from-name" since="1.0"/>
- <keyword type="function" name="hb_font_get_glyph_from_name_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-from-name-func-t"/>
- <keyword type="function" name="hb_font_get_glyph_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-func-t"/>
- <keyword type="function" name="hb_font_get_glyph_h_advance ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-h-advance" since="1.0"/>
- <keyword type="function" name="hb_font_get_glyph_h_kerning ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-h-kerning" since="1.0"/>
- <keyword type="function" name="hb_font_get_glyph_h_origin ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-h-origin" since="1.0"/>
- <keyword type="function" name="hb_font_get_glyph_kerning_for_direction ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-kerning-for-direction" since="1.0"/>
- <keyword type="function" name="hb_font_get_glyph_kerning_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-kerning-func-t"/>
- <keyword type="function" name="hb_font_get_glyph_name ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-name" since="1.0"/>
- <keyword type="function" name="hb_font_get_glyph_name_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-name-func-t"/>
- <keyword type="function" name="hb_font_get_glyph_origin_for_direction ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-origin-for-direction" since="1.0"/>
- <keyword type="function" name="hb_font_get_glyph_origin_func_t ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-origin-func-t"/>
- <keyword type="function" name="hb_font_get_glyph_v_advance ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-v-advance" since="1.0"/>
- <keyword type="function" name="hb_font_get_glyph_v_kerning ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-v-kerning" since="1.0"/>
- <keyword type="function" name="hb_font_get_glyph_v_origin ()" link="harfbuzz-hb-font.html#hb-font-get-glyph-v-origin" since="1.0"/>
- <keyword type="function" name="hb_font_get_parent ()" link="harfbuzz-hb-font.html#hb-font-get-parent" since="1.0"/>
- <keyword type="function" name="hb_font_get_ppem ()" link="harfbuzz-hb-font.html#hb-font-get-ppem" since="1.0"/>
- <keyword type="function" name="hb_font_get_scale ()" link="harfbuzz-hb-font.html#hb-font-get-scale" since="1.0"/>
- <keyword type="function" name="hb_font_get_user_data ()" link="harfbuzz-hb-font.html#hb-font-get-user-data" since="1.0"/>
- <keyword type="function" name="hb_font_glyph_from_string ()" link="harfbuzz-hb-font.html#hb-font-glyph-from-string" since="1.0"/>
- <keyword type="function" name="hb_font_glyph_to_string ()" link="harfbuzz-hb-font.html#hb-font-glyph-to-string" since="1.0"/>
- <keyword type="function" name="hb_font_is_immutable ()" link="harfbuzz-hb-font.html#hb-font-is-immutable" since="1.0"/>
- <keyword type="function" name="hb_font_make_immutable ()" link="harfbuzz-hb-font.html#hb-font-make-immutable" since="1.0"/>
- <keyword type="function" name="hb_font_reference ()" link="harfbuzz-hb-font.html#hb-font-reference" since="1.0"/>
- <keyword type="function" name="hb_font_set_funcs ()" link="harfbuzz-hb-font.html#hb-font-set-funcs" since="1.0"/>
- <keyword type="function" name="hb_font_set_funcs_data ()" link="harfbuzz-hb-font.html#hb-font-set-funcs-data" since="1.0"/>
- <keyword type="function" name="hb_font_set_ppem ()" link="harfbuzz-hb-font.html#hb-font-set-ppem" since="1.0"/>
- <keyword type="function" name="hb_font_set_scale ()" link="harfbuzz-hb-font.html#hb-font-set-scale" since="1.0"/>
- <keyword type="function" name="hb_font_set_user_data ()" link="harfbuzz-hb-font.html#hb-font-set-user-data" since="1.0"/>
- <keyword type="function" name="hb_font_subtract_glyph_origin_for_direction ()" link="harfbuzz-hb-font.html#hb-font-subtract-glyph-origin-for-direction" since="1.0"/>
- <keyword type="function" name="hb_reference_table_func_t ()" link="harfbuzz-hb-font.html#hb-reference-table-func-t"/>
- <keyword type="typedef" name="hb_font_funcs_t" link="harfbuzz-hb-font.html#hb-font-funcs-t"/>
- <keyword type="typedef" name="hb_font_get_glyph_h_advance_func_t" link="harfbuzz-hb-font.html#hb-font-get-glyph-h-advance-func-t"/>
- <keyword type="typedef" name="hb_font_get_glyph_h_kerning_func_t" link="harfbuzz-hb-font.html#hb-font-get-glyph-h-kerning-func-t"/>
- <keyword type="typedef" name="hb_font_get_glyph_h_origin_func_t" link="harfbuzz-hb-font.html#hb-font-get-glyph-h-origin-func-t"/>
- <keyword type="typedef" name="hb_font_get_glyph_v_advance_func_t" link="harfbuzz-hb-font.html#hb-font-get-glyph-v-advance-func-t"/>
- <keyword type="typedef" name="hb_font_get_glyph_v_kerning_func_t" link="harfbuzz-hb-font.html#hb-font-get-glyph-v-kerning-func-t"/>
- <keyword type="typedef" name="hb_font_get_glyph_v_origin_func_t" link="harfbuzz-hb-font.html#hb-font-get-glyph-v-origin-func-t"/>
- <keyword type="typedef" name="hb_font_t" link="harfbuzz-hb-font.html#hb-font-t"/>
- <keyword type="function" name="hb_feature_from_string ()" link="harfbuzz-hb-shape.html#hb-feature-from-string" since="1.0"/>
- <keyword type="function" name="hb_feature_to_string ()" link="harfbuzz-hb-shape.html#hb-feature-to-string" since="1.0"/>
- <keyword type="function" name="hb_shape ()" link="harfbuzz-hb-shape.html#hb-shape" since="1.0"/>
- <keyword type="function" name="hb_shape_full ()" link="harfbuzz-hb-shape.html#hb-shape-full" since="1.0"/>
- <keyword type="function" name="hb_shape_list_shapers ()" link="harfbuzz-hb-shape.html#hb-shape-list-shapers" since="1.0"/>
- <keyword type="struct" name="hb_feature_t" link="harfbuzz-hb-shape.html#hb-feature-t-struct"/>
- <keyword type="function" name="hb_version ()" link="harfbuzz-hb-version.html#hb-version" since="1.0"/>
- <keyword type="function" name="hb_version_string ()" link="harfbuzz-hb-version.html#hb-version-string" since="1.0"/>
- <keyword type="macro" name="HB_VERSION_MAJOR" link="harfbuzz-hb-version.html#HB-VERSION-MAJOR:CAPS"/>
- <keyword type="macro" name="HB_VERSION_MICRO" link="harfbuzz-hb-version.html#HB-VERSION-MICRO:CAPS"/>
- <keyword type="macro" name="HB_VERSION_MINOR" link="harfbuzz-hb-version.html#HB-VERSION-MINOR:CAPS"/>
- <keyword type="macro" name="HB_VERSION_STRING" link="harfbuzz-hb-version.html#HB-VERSION-STRING:CAPS"/>
- <keyword type="macro" name="HB_BUFFER_FLAGS_DEFAULT" link="harfbuzz-hb-deprecated.html#HB-BUFFER-FLAGS-DEFAULT:CAPS" deprecated=""/>
- <keyword type="macro" name="HB_BUFFER_SERIALIZE_FLAGS_DEFAULT" link="harfbuzz-hb-deprecated.html#HB-BUFFER-SERIALIZE-FLAGS-DEFAULT:CAPS" deprecated=""/>
- <keyword type="macro" name="HB_SCRIPT_CANADIAN_ABORIGINAL" link="harfbuzz-hb-deprecated.html#HB-SCRIPT-CANADIAN-ABORIGINAL:CAPS" deprecated=""/>
- <keyword type="macro" name="HB_SET_VALUE_INVALID" link="harfbuzz-hb-set.html#HB-SET-VALUE-INVALID:CAPS"/>
- <keyword type="function" name="hb_set_add ()" link="harfbuzz-hb-set.html#hb-set-add" since="1.0"/>
- <keyword type="function" name="hb_set_add_range ()" link="harfbuzz-hb-set.html#hb-set-add-range" since="1.0"/>
- <keyword type="function" name="hb_set_allocation_successful ()" link="harfbuzz-hb-set.html#hb-set-allocation-successful" since="1.0"/>
- <keyword type="function" name="hb_set_clear ()" link="harfbuzz-hb-set.html#hb-set-clear" since="1.0"/>
- <keyword type="function" name="hb_set_create ()" link="harfbuzz-hb-set.html#hb-set-create"/>
- <keyword type="function" name="hb_set_del ()" link="harfbuzz-hb-set.html#hb-set-del" since="1.0"/>
- <keyword type="function" name="hb_set_del_range ()" link="harfbuzz-hb-set.html#hb-set-del-range" since="1.0"/>
- <keyword type="function" name="hb_set_destroy ()" link="harfbuzz-hb-set.html#hb-set-destroy" since="1.0"/>
- <keyword type="function" name="hb_set_get_empty ()" link="harfbuzz-hb-set.html#hb-set-get-empty" since="1.0"/>
- <keyword type="function" name="hb_set_get_max ()" link="harfbuzz-hb-set.html#hb-set-get-max" since="1.0"/>
- <keyword type="function" name="hb_set_get_min ()" link="harfbuzz-hb-set.html#hb-set-get-min" since="1.0"/>
- <keyword type="function" name="hb_set_get_population ()" link="harfbuzz-hb-set.html#hb-set-get-population" since="1.0"/>
- <keyword type="function" name="hb_set_get_user_data ()" link="harfbuzz-hb-set.html#hb-set-get-user-data" since="1.0"/>
- <keyword type="function" name="hb_set_has ()" link="harfbuzz-hb-set.html#hb-set-has" since="1.0"/>
- <keyword type="function" name="hb_set_intersect ()" link="harfbuzz-hb-set.html#hb-set-intersect" since="1.0"/>
- <keyword type="function" name="hb_set_invert ()" link="harfbuzz-hb-set.html#hb-set-invert" since="1.0"/>
- <keyword type="function" name="hb_set_is_empty ()" link="harfbuzz-hb-set.html#hb-set-is-empty" since="1.0"/>
- <keyword type="function" name="hb_set_is_equal ()" link="harfbuzz-hb-set.html#hb-set-is-equal" since="1.0"/>
- <keyword type="function" name="hb_set_next ()" link="harfbuzz-hb-set.html#hb-set-next" since="1.0"/>
- <keyword type="function" name="hb_set_next_range ()" link="harfbuzz-hb-set.html#hb-set-next-range" since="1.0"/>
- <keyword type="function" name="hb_set_reference ()" link="harfbuzz-hb-set.html#hb-set-reference" since="1.0"/>
- <keyword type="function" name="hb_set_set ()" link="harfbuzz-hb-set.html#hb-set-set" since="1.0"/>
- <keyword type="function" name="hb_set_set_user_data ()" link="harfbuzz-hb-set.html#hb-set-set-user-data" since="1.0"/>
- <keyword type="function" name="hb_set_subtract ()" link="harfbuzz-hb-set.html#hb-set-subtract" since="1.0"/>
- <keyword type="function" name="hb_set_symmetric_difference ()" link="harfbuzz-hb-set.html#hb-set-symmetric-difference" since="1.0"/>
- <keyword type="function" name="hb_set_union ()" link="harfbuzz-hb-set.html#hb-set-union" since="1.0"/>
- <keyword type="typedef" name="hb_set_t" link="harfbuzz-hb-set.html#hb-set-t"/>
- <keyword type="function" name="hb_ot_layout_collect_lookups ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-collect-lookups"/>
- <keyword type="function" name="hb_ot_layout_feature_get_lookups ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-feature-get-lookups"/>
- <keyword type="function" name="hb_ot_layout_get_attach_points ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-get-attach-points"/>
- <keyword type="function" name="hb_ot_layout_get_glyph_class ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-get-glyph-class"/>
- <keyword type="function" name="hb_ot_layout_get_glyphs_in_class ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-get-glyphs-in-class"/>
- <keyword type="function" name="hb_ot_layout_get_ligature_carets ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-get-ligature-carets"/>
- <keyword type="function" name="hb_ot_layout_get_size_params ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-get-size-params"/>
- <keyword type="function" name="hb_ot_layout_glyph_sequence_func_t ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-glyph-sequence-func-t"/>
- <keyword type="function" name="hb_ot_layout_has_glyph_classes ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-has-glyph-classes"/>
- <keyword type="function" name="hb_ot_layout_has_positioning ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-has-positioning"/>
- <keyword type="function" name="hb_ot_layout_has_substitution ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-has-substitution"/>
- <keyword type="function" name="hb_ot_layout_language_find_feature ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-language-find-feature"/>
- <keyword type="function" name="hb_ot_layout_language_get_feature_indexes ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-language-get-feature-indexes"/>
- <keyword type="function" name="hb_ot_layout_language_get_feature_tags ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-language-get-feature-tags"/>
- <keyword type="function" name="hb_ot_layout_language_get_required_feature ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-language-get-required-feature"/>
- <keyword type="function" name="hb_ot_layout_lookup_collect_glyphs ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-lookup-collect-glyphs"/>
- <keyword type="function" name="hb_ot_layout_lookup_substitute_closure ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-lookup-substitute-closure"/>
- <keyword type="function" name="hb_ot_layout_lookup_would_substitute ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-lookup-would-substitute"/>
- <keyword type="function" name="hb_ot_layout_script_find_language ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-script-find-language"/>
- <keyword type="function" name="hb_ot_layout_script_get_language_tags ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-script-get-language-tags"/>
- <keyword type="function" name="hb_ot_layout_table_choose_script ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-table-choose-script"/>
- <keyword type="function" name="hb_ot_layout_table_find_script ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-table-find-script"/>
- <keyword type="function" name="hb_ot_layout_table_get_feature_tags ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-table-get-feature-tags"/>
- <keyword type="function" name="hb_ot_layout_table_get_script_tags ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-table-get-script-tags"/>
- <keyword type="function" name="hb_ot_layout_table_get_lookup_count ()" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-table-get-lookup-count"/>
- <keyword type="function" name="hb_ot_shape_plan_collect_lookups ()" link="harfbuzz-hb-ot-layout.html#hb-ot-shape-plan-collect-lookups"/>
- <keyword type="macro" name="HB_OT_LAYOUT_DEFAULT_LANGUAGE_INDEX" link="harfbuzz-hb-ot-layout.html#HB-OT-LAYOUT-DEFAULT-LANGUAGE-INDEX:CAPS"/>
- <keyword type="macro" name="HB_OT_LAYOUT_NO_FEATURE_INDEX" link="harfbuzz-hb-ot-layout.html#HB-OT-LAYOUT-NO-FEATURE-INDEX:CAPS"/>
- <keyword type="macro" name="HB_OT_LAYOUT_NO_SCRIPT_INDEX" link="harfbuzz-hb-ot-layout.html#HB-OT-LAYOUT-NO-SCRIPT-INDEX:CAPS"/>
- <keyword type="macro" name="HB_OT_TAG_GDEF" link="harfbuzz-hb-ot-layout.html#HB-OT-TAG-GDEF:CAPS"/>
- <keyword type="macro" name="HB_OT_TAG_GPOS" link="harfbuzz-hb-ot-layout.html#HB-OT-TAG-GPOS:CAPS"/>
- <keyword type="macro" name="HB_OT_TAG_GSUB" link="harfbuzz-hb-ot-layout.html#HB-OT-TAG-GSUB:CAPS"/>
- <keyword type="enum" name="enum hb_ot_layout_glyph_class_t" link="harfbuzz-hb-ot-layout.html#hb-ot-layout-glyph-class-t"/>
- <keyword type="function" name="hb_ot_tag_from_language ()" link="harfbuzz-hb-ot-tag.html#hb-ot-tag-from-language"/>
- <keyword type="function" name="hb_ot_tag_to_language ()" link="harfbuzz-hb-ot-tag.html#hb-ot-tag-to-language"/>
- <keyword type="function" name="hb_ot_tag_to_script ()" link="harfbuzz-hb-ot-tag.html#hb-ot-tag-to-script"/>
- <keyword type="function" name="hb_ot_tags_from_script ()" link="harfbuzz-hb-ot-tag.html#hb-ot-tags-from-script"/>
- <keyword type="macro" name="HB_OT_TAG_DEFAULT_LANGUAGE" link="harfbuzz-hb-ot-tag.html#HB-OT-TAG-DEFAULT-LANGUAGE:CAPS"/>
- <keyword type="macro" name="HB_OT_TAG_DEFAULT_SCRIPT" link="harfbuzz-hb-ot-tag.html#HB-OT-TAG-DEFAULT-SCRIPT:CAPS"/>
- <keyword type="function" name="hb_shape_plan_create ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-create"/>
- <keyword type="function" name="hb_shape_plan_create_cached ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-create-cached" since="1.0"/>
- <keyword type="function" name="hb_shape_plan_destroy ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-destroy" since="1.0"/>
- <keyword type="function" name="hb_shape_plan_execute ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-execute" since="1.0"/>
- <keyword type="function" name="hb_shape_plan_get_empty ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-get-empty" since="1.0"/>
- <keyword type="function" name="hb_shape_plan_get_shaper ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-get-shaper" since="1.0"/>
- <keyword type="function" name="hb_shape_plan_get_user_data ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-get-user-data" since="1.0"/>
- <keyword type="function" name="hb_shape_plan_reference ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-reference" since="1.0"/>
- <keyword type="function" name="hb_shape_plan_set_user_data ()" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-set-user-data" since="1.0"/>
- <keyword type="typedef" name="hb_shape_plan_t" link="harfbuzz-hb-shape-plan.html#hb-shape-plan-t"/>
- <keyword type="function" name="hb_glib_get_unicode_funcs ()" link="harfbuzz-hb-glib.html#hb-glib-get-unicode-funcs"/>
- <keyword type="function" name="hb_glib_script_from_script ()" link="harfbuzz-hb-glib.html#hb-glib-script-from-script"/>
- <keyword type="function" name="hb_glib_script_to_script ()" link="harfbuzz-hb-glib.html#hb-glib-script-to-script"/>
- <keyword type="function" name="hb_icu_get_unicode_funcs ()" link="harfbuzz-hb-icu.html#hb-icu-get-unicode-funcs"/>
- <keyword type="function" name="hb_icu_script_from_script ()" link="harfbuzz-hb-icu.html#hb-icu-script-from-script"/>
- <keyword type="function" name="hb_icu_script_to_script ()" link="harfbuzz-hb-icu.html#hb-icu-script-to-script"/>
- <keyword type="function" name="hb_ft_face_create ()" link="harfbuzz-hb-ft.html#hb-ft-face-create" since="1.0"/>
- <keyword type="function" name="hb_ft_face_create_cached ()" link="harfbuzz-hb-ft.html#hb-ft-face-create-cached" since="1.0"/>
- <keyword type="function" name="hb_ft_font_create ()" link="harfbuzz-hb-ft.html#hb-ft-font-create" since="1.0"/>
- <keyword type="function" name="hb_ft_font_get_face ()" link="harfbuzz-hb-ft.html#hb-ft-font-get-face"/>
- <keyword type="function" name="hb_ft_font_set_funcs ()" link="harfbuzz-hb-ft.html#hb-ft-font-set-funcs"/>
- <keyword type="function" name="hb_graphite2_face_get_gr_face ()" link="harfbuzz-hb-graphite2.html#hb-graphite2-face-get-gr-face"/>
- <keyword type="function" name="hb_graphite2_font_get_gr_font ()" link="harfbuzz-hb-graphite2.html#hb-graphite2-font-get-gr-font"/>
- <keyword type="macro" name="HB_GRAPHITE2_TAG_SILF" link="harfbuzz-hb-graphite2.html#HB-GRAPHITE2-TAG-SILF:CAPS"/>
- <keyword type="function" name="hb_uniscribe_font_get_hfont ()" link="harfbuzz-hb-uniscribe.html#hb-uniscribe-font-get-hfont"/>
- <keyword type="function" name="hb_uniscribe_font_get_logfontw ()" link="harfbuzz-hb-uniscribe.html#hb-uniscribe-font-get-logfontw"/>
- <keyword type="function" name="hb_coretext_face_create ()" link="harfbuzz-hb-coretext.html#hb-coretext-face-create"/>
- <keyword type="function" name="hb_coretext_face_get_cg_font ()" link="harfbuzz-hb-coretext.html#hb-coretext-face-get-cg-font"/>
- <keyword type="function" name="hb_coretext_font_get_ct_font ()" link="harfbuzz-hb-coretext.html#hb-coretext-font-get-ct-font"/>
- <keyword type="macro" name="HB_CORETEXT_TAG_MORT" link="harfbuzz-hb-coretext.html#HB-CORETEXT-TAG-MORT:CAPS"/>
- <keyword type="macro" name="HB_CORETEXT_TAG_MORX" link="harfbuzz-hb-coretext.html#HB-CORETEXT-TAG-MORX:CAPS"/>
- </functions>
-</book>
diff --git a/docs/reference/html/index.html b/docs/reference/html/index.html
deleted file mode 100644
index 772db71..0000000
--- a/docs/reference/html/index.html
+++ /dev/null
@@ -1,105 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>HarfBuzz Reference Manual</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="HarfBuzz Reference Manual">
-<link rel="next" href="ch01.html" title="[Insert title here]">
-<meta name="generator" content="GTK-Doc V1.20.1 (XML mode)">
-<link rel="stylesheet" href="style.css" type="text/css">
-</head>
-<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<div class="book">
-<div class="titlepage">
-<div>
-<div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">HarfBuzz Reference Manual</p></th></tr></table></div>
-<div><p class="releaseinfo">
- for HarfBuzz 0.9.40
-.
-
- </p></div>
-</div>
-<hr>
-</div>
-<div class="toc"><dl>
-<dt><span class="chapter"><a href="ch01.html">[Insert title here]</a></span></dt>
-<dd><dl>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb.html">hb</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-common.html">hb-common</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-unicode.html">hb-unicode</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-buffer.html">hb-buffer</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-blob.html">hb-blob</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-face.html">hb-face</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-font.html">hb-font</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-shape.html">hb-shape</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-version.html">hb-version</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-deprecated.html">hb-deprecated</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-set.html">hb-set</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-ot.html">hb-ot</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-ot-layout.html">hb-ot-layout</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-ot-tag.html">hb-ot-tag</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-shape-plan.html">hb-shape-plan</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-glib.html">hb-glib</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-icu.html">hb-icu</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-ft.html">hb-ft</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-graphite2.html">hb-graphite2</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-uniscribe.html">hb-uniscribe</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-coretext.html">hb-coretext</a></span><span class="refpurpose"></span>
-</dt>
-<dt>
-<span class="refentrytitle"><a href="harfbuzz-hb-gobject.html">hb-gobject</a></span><span class="refpurpose"></span>
-</dt>
-</dl></dd>
-<dt><span class="chapter"><a href="object-tree.html">Object Hierarchy</a></span></dt>
-<dt><span class="index"><a href="api-index-full.html">API Index</a></span></dt>
-<dt><span class="index"><a href="deprecated-api-index.html">Index of deprecated API</a></span></dt>
-<dt><span class="glossary"><a href="annotation-glossary.html">Annotation Glossary</a></span></dt>
-</dl></div>
-</div>
-<div class="footer">
-<hr>
- Generated by GTK-Doc V1.20.1</div>
-</body>
-</html> \ No newline at end of file
diff --git a/docs/reference/html/index.sgml b/docs/reference/html/index.sgml
deleted file mode 100644
index 7b469b5..0000000
--- a/docs/reference/html/index.sgml
+++ /dev/null
@@ -1,496 +0,0 @@
-<ANCHOR id="harfbuzz-hb" href="harfbuzz/harfbuzz-hb.html">
-<ANCHOR id="harfbuzz-hb.description" href="harfbuzz/harfbuzz-hb.html#harfbuzz-hb.description">
-<ANCHOR id="harfbuzz-hb.functions_details" href="harfbuzz/harfbuzz-hb.html#harfbuzz-hb.functions_details">
-<ANCHOR id="harfbuzz-hb.other_details" href="harfbuzz/harfbuzz-hb.html#harfbuzz-hb.other_details">
-<ANCHOR id="harfbuzz-hb-common" href="harfbuzz/harfbuzz-hb-common.html">
-<ANCHOR id="harfbuzz-hb-common.functions" href="harfbuzz/harfbuzz-hb-common.html#harfbuzz-hb-common.functions">
-<ANCHOR id="hb-language-t" href="harfbuzz/harfbuzz-hb-common.html#hb-language-t">
-<ANCHOR id="hb-user-data-key-t" href="harfbuzz/harfbuzz-hb-common.html#hb-user-data-key-t">
-<ANCHOR id="harfbuzz-hb-common.other" href="harfbuzz/harfbuzz-hb-common.html#harfbuzz-hb-common.other">
-<ANCHOR id="harfbuzz-hb-common.object-hierarchy" href="harfbuzz/harfbuzz-hb-common.html#harfbuzz-hb-common.object-hierarchy">
-<ANCHOR id="harfbuzz-hb-common.description" href="harfbuzz/harfbuzz-hb-common.html#harfbuzz-hb-common.description">
-<ANCHOR id="harfbuzz-hb-common.functions_details" href="harfbuzz/harfbuzz-hb-common.html#harfbuzz-hb-common.functions_details">
-<ANCHOR id="HB-DIRECTION-REVERSE:CAPS" href="harfbuzz/harfbuzz-hb-common.html#HB-DIRECTION-REVERSE:CAPS">
-<ANCHOR id="HB-LANGUAGE-INVALID:CAPS" href="harfbuzz/harfbuzz-hb-common.html#HB-LANGUAGE-INVALID:CAPS">
-<ANCHOR id="HB-TAG:CAPS" href="harfbuzz/harfbuzz-hb-common.html#HB-TAG:CAPS">
-<ANCHOR id="HB-UNTAG:CAPS" href="harfbuzz/harfbuzz-hb-common.html#HB-UNTAG:CAPS">
-<ANCHOR id="hb-destroy-func-t" href="harfbuzz/harfbuzz-hb-common.html#hb-destroy-func-t">
-<ANCHOR id="hb-direction-from-string" href="harfbuzz/harfbuzz-hb-common.html#hb-direction-from-string">
-<ANCHOR id="hb-direction-to-string" href="harfbuzz/harfbuzz-hb-common.html#hb-direction-to-string">
-<ANCHOR id="hb-language-from-string" href="harfbuzz/harfbuzz-hb-common.html#hb-language-from-string">
-<ANCHOR id="hb-language-get-default" href="harfbuzz/harfbuzz-hb-common.html#hb-language-get-default">
-<ANCHOR id="hb-language-to-string" href="harfbuzz/harfbuzz-hb-common.html#hb-language-to-string">
-<ANCHOR id="hb-script-from-iso15924-tag" href="harfbuzz/harfbuzz-hb-common.html#hb-script-from-iso15924-tag">
-<ANCHOR id="hb-script-from-string" href="harfbuzz/harfbuzz-hb-common.html#hb-script-from-string">
-<ANCHOR id="hb-script-get-horizontal-direction" href="harfbuzz/harfbuzz-hb-common.html#hb-script-get-horizontal-direction">
-<ANCHOR id="hb-script-to-iso15924-tag" href="harfbuzz/harfbuzz-hb-common.html#hb-script-to-iso15924-tag">
-<ANCHOR id="hb-tag-from-string" href="harfbuzz/harfbuzz-hb-common.html#hb-tag-from-string">
-<ANCHOR id="hb-tag-to-string" href="harfbuzz/harfbuzz-hb-common.html#hb-tag-to-string">
-<ANCHOR id="HB-DIRECTION-IS-BACKWARD:CAPS" href="harfbuzz/harfbuzz-hb-common.html#HB-DIRECTION-IS-BACKWARD:CAPS">
-<ANCHOR id="HB-DIRECTION-IS-FORWARD:CAPS" href="harfbuzz/harfbuzz-hb-common.html#HB-DIRECTION-IS-FORWARD:CAPS">
-<ANCHOR id="HB-DIRECTION-IS-HORIZONTAL:CAPS" href="harfbuzz/harfbuzz-hb-common.html#HB-DIRECTION-IS-HORIZONTAL:CAPS">
-<ANCHOR id="HB-DIRECTION-IS-VALID:CAPS" href="harfbuzz/harfbuzz-hb-common.html#HB-DIRECTION-IS-VALID:CAPS">
-<ANCHOR id="HB-DIRECTION-IS-VERTICAL:CAPS" href="harfbuzz/harfbuzz-hb-common.html#HB-DIRECTION-IS-VERTICAL:CAPS">
-<ANCHOR id="harfbuzz-hb-common.other_details" href="harfbuzz/harfbuzz-hb-common.html#harfbuzz-hb-common.other_details">
-<ANCHOR id="HB-TAG-NONE:CAPS" href="harfbuzz/harfbuzz-hb-common.html#HB-TAG-NONE:CAPS">
-<ANCHOR id="HB-TAG-MAX:CAPS" href="harfbuzz/harfbuzz-hb-common.html#HB-TAG-MAX:CAPS">
-<ANCHOR id="hb-bool-t" href="harfbuzz/harfbuzz-hb-common.html#hb-bool-t">
-<ANCHOR id="hb-codepoint-t" href="harfbuzz/harfbuzz-hb-common.html#hb-codepoint-t">
-<ANCHOR id="hb-direction-t" href="harfbuzz/harfbuzz-hb-common.html#hb-direction-t">
-<ANCHOR id="hb-language-t" href="harfbuzz/harfbuzz-hb-common.html#hb-language-t">
-<ANCHOR id="hb-mask-t" href="harfbuzz/harfbuzz-hb-common.html#hb-mask-t">
-<ANCHOR id="hb-position-t" href="harfbuzz/harfbuzz-hb-common.html#hb-position-t">
-<ANCHOR id="hb-script-t" href="harfbuzz/harfbuzz-hb-common.html#hb-script-t">
-<ANCHOR id="hb-tag-t" href="harfbuzz/harfbuzz-hb-common.html#hb-tag-t">
-<ANCHOR id="hb-user-data-key-t-struct" href="harfbuzz/harfbuzz-hb-common.html#hb-user-data-key-t-struct">
-<ANCHOR id="hb-var-int-t" href="harfbuzz/harfbuzz-hb-common.html#hb-var-int-t">
-<ANCHOR id="harfbuzz-hb-unicode" href="harfbuzz/harfbuzz-hb-unicode.html">
-<ANCHOR id="harfbuzz-hb-unicode.functions" href="harfbuzz/harfbuzz-hb-unicode.html#harfbuzz-hb-unicode.functions">
-<ANCHOR id="hb-unicode-funcs-t" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-t">
-<ANCHOR id="harfbuzz-hb-unicode.other" href="harfbuzz/harfbuzz-hb-unicode.html#harfbuzz-hb-unicode.other">
-<ANCHOR id="harfbuzz-hb-unicode.object-hierarchy" href="harfbuzz/harfbuzz-hb-unicode.html#harfbuzz-hb-unicode.object-hierarchy">
-<ANCHOR id="harfbuzz-hb-unicode.description" href="harfbuzz/harfbuzz-hb-unicode.html#harfbuzz-hb-unicode.description">
-<ANCHOR id="harfbuzz-hb-unicode.functions_details" href="harfbuzz/harfbuzz-hb-unicode.html#harfbuzz-hb-unicode.functions_details">
-<ANCHOR id="HB-UNICODE-MAX-DECOMPOSITION-LEN:CAPS" href="harfbuzz/harfbuzz-hb-unicode.html#HB-UNICODE-MAX-DECOMPOSITION-LEN:CAPS">
-<ANCHOR id="hb-unicode-combining-class" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-combining-class">
-<ANCHOR id="hb-unicode-combining-class-func-t" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-combining-class-func-t">
-<ANCHOR id="hb-unicode-compose" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-compose">
-<ANCHOR id="hb-unicode-compose-func-t" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-compose-func-t">
-<ANCHOR id="hb-unicode-decompose" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-decompose">
-<ANCHOR id="hb-unicode-decompose-compatibility" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-decompose-compatibility">
-<ANCHOR id="hb-unicode-decompose-func-t" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-decompose-func-t">
-<ANCHOR id="hb-unicode-eastasian-width" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-eastasian-width">
-<ANCHOR id="hb-unicode-funcs-create" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-create">
-<ANCHOR id="hb-unicode-funcs-destroy" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-destroy">
-<ANCHOR id="hb-unicode-funcs-get-default" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-get-default">
-<ANCHOR id="hb-unicode-funcs-get-empty" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-get-empty">
-<ANCHOR id="hb-unicode-funcs-get-parent" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-get-parent">
-<ANCHOR id="hb-unicode-funcs-get-user-data" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-get-user-data">
-<ANCHOR id="hb-unicode-funcs-is-immutable" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-is-immutable">
-<ANCHOR id="hb-unicode-funcs-make-immutable" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-make-immutable">
-<ANCHOR id="hb-unicode-funcs-reference" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-reference">
-<ANCHOR id="hb-unicode-funcs-set-combining-class-func" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-set-combining-class-func">
-<ANCHOR id="hb-unicode-funcs-set-compose-func" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-set-compose-func">
-<ANCHOR id="hb-unicode-funcs-set-decompose-compatibility-func" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-set-decompose-compatibility-func">
-<ANCHOR id="hb-unicode-funcs-set-decompose-func" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-set-decompose-func">
-<ANCHOR id="hb-unicode-funcs-set-eastasian-width-func" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-set-eastasian-width-func">
-<ANCHOR id="hb-unicode-funcs-set-general-category-func" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-set-general-category-func">
-<ANCHOR id="hb-unicode-funcs-set-mirroring-func" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-set-mirroring-func">
-<ANCHOR id="hb-unicode-funcs-set-script-func" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-set-script-func">
-<ANCHOR id="hb-unicode-funcs-set-user-data" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-set-user-data">
-<ANCHOR id="hb-unicode-general-category" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-general-category">
-<ANCHOR id="hb-unicode-general-category-func-t" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-general-category-func-t">
-<ANCHOR id="hb-unicode-mirroring" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-mirroring">
-<ANCHOR id="hb-unicode-mirroring-func-t" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-mirroring-func-t">
-<ANCHOR id="hb-unicode-script" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-script">
-<ANCHOR id="hb-unicode-script-func-t" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-script-func-t">
-<ANCHOR id="harfbuzz-hb-unicode.other_details" href="harfbuzz/harfbuzz-hb-unicode.html#harfbuzz-hb-unicode.other_details">
-<ANCHOR id="hb-unicode-combining-class-t" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-combining-class-t">
-<ANCHOR id="hb-unicode-funcs-t" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-funcs-t">
-<ANCHOR id="hb-unicode-general-category-t" href="harfbuzz/harfbuzz-hb-unicode.html#hb-unicode-general-category-t">
-<ANCHOR id="harfbuzz-hb-buffer" href="harfbuzz/harfbuzz-hb-buffer.html">
-<ANCHOR id="harfbuzz-hb-buffer.functions" href="harfbuzz/harfbuzz-hb-buffer.html#harfbuzz-hb-buffer.functions">
-<ANCHOR id="hb-buffer-t" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-t">
-<ANCHOR id="hb-glyph-info-t" href="harfbuzz/harfbuzz-hb-buffer.html#hb-glyph-info-t">
-<ANCHOR id="hb-glyph-position-t" href="harfbuzz/harfbuzz-hb-buffer.html#hb-glyph-position-t">
-<ANCHOR id="hb-segment-properties-t" href="harfbuzz/harfbuzz-hb-buffer.html#hb-segment-properties-t">
-<ANCHOR id="harfbuzz-hb-buffer.other" href="harfbuzz/harfbuzz-hb-buffer.html#harfbuzz-hb-buffer.other">
-<ANCHOR id="harfbuzz-hb-buffer.object-hierarchy" href="harfbuzz/harfbuzz-hb-buffer.html#harfbuzz-hb-buffer.object-hierarchy">
-<ANCHOR id="harfbuzz-hb-buffer.description" href="harfbuzz/harfbuzz-hb-buffer.html#harfbuzz-hb-buffer.description">
-<ANCHOR id="harfbuzz-hb-buffer.functions_details" href="harfbuzz/harfbuzz-hb-buffer.html#harfbuzz-hb-buffer.functions_details">
-<ANCHOR id="hb-buffer-add" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-add">
-<ANCHOR id="hb-buffer-add-utf16" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-add-utf16">
-<ANCHOR id="hb-buffer-add-utf32" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-add-utf32">
-<ANCHOR id="hb-buffer-add-utf8" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-add-utf8">
-<ANCHOR id="hb-buffer-add-codepoints" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-add-codepoints">
-<ANCHOR id="hb-buffer-allocation-successful" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-allocation-successful">
-<ANCHOR id="hb-buffer-clear-contents" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-clear-contents">
-<ANCHOR id="hb-buffer-create" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-create">
-<ANCHOR id="hb-buffer-deserialize-glyphs" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-deserialize-glyphs">
-<ANCHOR id="hb-buffer-destroy" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-destroy">
-<ANCHOR id="hb-buffer-get-content-type" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-get-content-type">
-<ANCHOR id="hb-buffer-get-direction" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-get-direction">
-<ANCHOR id="hb-buffer-get-empty" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-get-empty">
-<ANCHOR id="hb-buffer-get-flags" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-get-flags">
-<ANCHOR id="hb-buffer-get-glyph-infos" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-get-glyph-infos">
-<ANCHOR id="hb-buffer-get-glyph-positions" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-get-glyph-positions">
-<ANCHOR id="hb-buffer-get-language" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-get-language">
-<ANCHOR id="hb-buffer-get-length" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-get-length">
-<ANCHOR id="hb-buffer-get-replacement-codepoint" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-get-replacement-codepoint">
-<ANCHOR id="hb-buffer-get-script" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-get-script">
-<ANCHOR id="hb-buffer-get-segment-properties" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-get-segment-properties">
-<ANCHOR id="hb-buffer-get-unicode-funcs" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-get-unicode-funcs">
-<ANCHOR id="hb-buffer-get-user-data" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-get-user-data">
-<ANCHOR id="hb-buffer-guess-segment-properties" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-guess-segment-properties">
-<ANCHOR id="hb-buffer-normalize-glyphs" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-normalize-glyphs">
-<ANCHOR id="hb-buffer-pre-allocate" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-pre-allocate">
-<ANCHOR id="hb-buffer-reference" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-reference">
-<ANCHOR id="hb-buffer-reset" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-reset">
-<ANCHOR id="hb-buffer-reverse" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-reverse">
-<ANCHOR id="hb-buffer-reverse-clusters" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-reverse-clusters">
-<ANCHOR id="hb-buffer-serialize-format-from-string" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-serialize-format-from-string">
-<ANCHOR id="hb-buffer-serialize-format-to-string" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-serialize-format-to-string">
-<ANCHOR id="hb-buffer-serialize-glyphs" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-serialize-glyphs">
-<ANCHOR id="hb-buffer-serialize-list-formats" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-serialize-list-formats">
-<ANCHOR id="hb-buffer-set-content-type" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-set-content-type">
-<ANCHOR id="hb-buffer-set-direction" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-set-direction">
-<ANCHOR id="hb-buffer-set-flags" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-set-flags">
-<ANCHOR id="hb-buffer-set-language" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-set-language">
-<ANCHOR id="hb-buffer-set-length" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-set-length">
-<ANCHOR id="hb-buffer-set-replacement-codepoint" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-set-replacement-codepoint">
-<ANCHOR id="hb-buffer-set-script" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-set-script">
-<ANCHOR id="hb-buffer-set-segment-properties" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-set-segment-properties">
-<ANCHOR id="hb-buffer-set-unicode-funcs" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-set-unicode-funcs">
-<ANCHOR id="hb-buffer-set-user-data" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-set-user-data">
-<ANCHOR id="hb-segment-properties-equal" href="harfbuzz/harfbuzz-hb-buffer.html#hb-segment-properties-equal">
-<ANCHOR id="hb-segment-properties-hash" href="harfbuzz/harfbuzz-hb-buffer.html#hb-segment-properties-hash">
-<ANCHOR id="harfbuzz-hb-buffer.other_details" href="harfbuzz/harfbuzz-hb-buffer.html#harfbuzz-hb-buffer.other_details">
-<ANCHOR id="HB-SEGMENT-PROPERTIES-DEFAULT:CAPS" href="harfbuzz/harfbuzz-hb-buffer.html#HB-SEGMENT-PROPERTIES-DEFAULT:CAPS">
-<ANCHOR id="hb-buffer-content-type-t" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-content-type-t">
-<ANCHOR id="hb-buffer-flags-t" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-flags-t">
-<ANCHOR id="hb-buffer-serialize-flags-t" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-serialize-flags-t">
-<ANCHOR id="hb-buffer-serialize-format-t" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-serialize-format-t">
-<ANCHOR id="hb-buffer-t" href="harfbuzz/harfbuzz-hb-buffer.html#hb-buffer-t">
-<ANCHOR id="hb-glyph-info-t-struct" href="harfbuzz/harfbuzz-hb-buffer.html#hb-glyph-info-t-struct">
-<ANCHOR id="hb-glyph-position-t-struct" href="harfbuzz/harfbuzz-hb-buffer.html#hb-glyph-position-t-struct">
-<ANCHOR id="hb-segment-properties-t-struct" href="harfbuzz/harfbuzz-hb-buffer.html#hb-segment-properties-t-struct">
-<ANCHOR id="harfbuzz-hb-blob" href="harfbuzz/harfbuzz-hb-blob.html">
-<ANCHOR id="harfbuzz-hb-blob.functions" href="harfbuzz/harfbuzz-hb-blob.html#harfbuzz-hb-blob.functions">
-<ANCHOR id="hb-blob-t" href="harfbuzz/harfbuzz-hb-blob.html#hb-blob-t">
-<ANCHOR id="harfbuzz-hb-blob.other" href="harfbuzz/harfbuzz-hb-blob.html#harfbuzz-hb-blob.other">
-<ANCHOR id="harfbuzz-hb-blob.object-hierarchy" href="harfbuzz/harfbuzz-hb-blob.html#harfbuzz-hb-blob.object-hierarchy">
-<ANCHOR id="harfbuzz-hb-blob.description" href="harfbuzz/harfbuzz-hb-blob.html#harfbuzz-hb-blob.description">
-<ANCHOR id="harfbuzz-hb-blob.functions_details" href="harfbuzz/harfbuzz-hb-blob.html#harfbuzz-hb-blob.functions_details">
-<ANCHOR id="hb-blob-create" href="harfbuzz/harfbuzz-hb-blob.html#hb-blob-create">
-<ANCHOR id="hb-blob-create-sub-blob" href="harfbuzz/harfbuzz-hb-blob.html#hb-blob-create-sub-blob">
-<ANCHOR id="hb-blob-destroy" href="harfbuzz/harfbuzz-hb-blob.html#hb-blob-destroy">
-<ANCHOR id="hb-blob-get-data" href="harfbuzz/harfbuzz-hb-blob.html#hb-blob-get-data">
-<ANCHOR id="hb-blob-get-data-writable" href="harfbuzz/harfbuzz-hb-blob.html#hb-blob-get-data-writable">
-<ANCHOR id="hb-blob-get-empty" href="harfbuzz/harfbuzz-hb-blob.html#hb-blob-get-empty">
-<ANCHOR id="hb-blob-get-length" href="harfbuzz/harfbuzz-hb-blob.html#hb-blob-get-length">
-<ANCHOR id="hb-blob-get-user-data" href="harfbuzz/harfbuzz-hb-blob.html#hb-blob-get-user-data">
-<ANCHOR id="hb-blob-is-immutable" href="harfbuzz/harfbuzz-hb-blob.html#hb-blob-is-immutable">
-<ANCHOR id="hb-blob-make-immutable" href="harfbuzz/harfbuzz-hb-blob.html#hb-blob-make-immutable">
-<ANCHOR id="hb-blob-reference" href="harfbuzz/harfbuzz-hb-blob.html#hb-blob-reference">
-<ANCHOR id="hb-blob-set-user-data" href="harfbuzz/harfbuzz-hb-blob.html#hb-blob-set-user-data">
-<ANCHOR id="harfbuzz-hb-blob.other_details" href="harfbuzz/harfbuzz-hb-blob.html#harfbuzz-hb-blob.other_details">
-<ANCHOR id="hb-blob-t" href="harfbuzz/harfbuzz-hb-blob.html#hb-blob-t">
-<ANCHOR id="hb-memory-mode-t" href="harfbuzz/harfbuzz-hb-blob.html#hb-memory-mode-t">
-<ANCHOR id="harfbuzz-hb-face" href="harfbuzz/harfbuzz-hb-face.html">
-<ANCHOR id="harfbuzz-hb-face.functions" href="harfbuzz/harfbuzz-hb-face.html#harfbuzz-hb-face.functions">
-<ANCHOR id="hb-face-t" href="harfbuzz/harfbuzz-hb-face.html#hb-face-t">
-<ANCHOR id="harfbuzz-hb-face.other" href="harfbuzz/harfbuzz-hb-face.html#harfbuzz-hb-face.other">
-<ANCHOR id="harfbuzz-hb-face.object-hierarchy" href="harfbuzz/harfbuzz-hb-face.html#harfbuzz-hb-face.object-hierarchy">
-<ANCHOR id="harfbuzz-hb-face.description" href="harfbuzz/harfbuzz-hb-face.html#harfbuzz-hb-face.description">
-<ANCHOR id="harfbuzz-hb-face.functions_details" href="harfbuzz/harfbuzz-hb-face.html#harfbuzz-hb-face.functions_details">
-<ANCHOR id="hb-face-create" href="harfbuzz/harfbuzz-hb-face.html#hb-face-create">
-<ANCHOR id="hb-face-create-for-tables" href="harfbuzz/harfbuzz-hb-face.html#hb-face-create-for-tables">
-<ANCHOR id="hb-face-destroy" href="harfbuzz/harfbuzz-hb-face.html#hb-face-destroy">
-<ANCHOR id="hb-face-get-empty" href="harfbuzz/harfbuzz-hb-face.html#hb-face-get-empty">
-<ANCHOR id="hb-face-get-glyph-count" href="harfbuzz/harfbuzz-hb-face.html#hb-face-get-glyph-count">
-<ANCHOR id="hb-face-get-index" href="harfbuzz/harfbuzz-hb-face.html#hb-face-get-index">
-<ANCHOR id="hb-face-get-upem" href="harfbuzz/harfbuzz-hb-face.html#hb-face-get-upem">
-<ANCHOR id="hb-face-get-user-data" href="harfbuzz/harfbuzz-hb-face.html#hb-face-get-user-data">
-<ANCHOR id="hb-face-is-immutable" href="harfbuzz/harfbuzz-hb-face.html#hb-face-is-immutable">
-<ANCHOR id="hb-face-make-immutable" href="harfbuzz/harfbuzz-hb-face.html#hb-face-make-immutable">
-<ANCHOR id="hb-face-reference" href="harfbuzz/harfbuzz-hb-face.html#hb-face-reference">
-<ANCHOR id="hb-face-reference-blob" href="harfbuzz/harfbuzz-hb-face.html#hb-face-reference-blob">
-<ANCHOR id="hb-face-reference-table" href="harfbuzz/harfbuzz-hb-face.html#hb-face-reference-table">
-<ANCHOR id="hb-face-set-glyph-count" href="harfbuzz/harfbuzz-hb-face.html#hb-face-set-glyph-count">
-<ANCHOR id="hb-face-set-index" href="harfbuzz/harfbuzz-hb-face.html#hb-face-set-index">
-<ANCHOR id="hb-face-set-upem" href="harfbuzz/harfbuzz-hb-face.html#hb-face-set-upem">
-<ANCHOR id="hb-face-set-user-data" href="harfbuzz/harfbuzz-hb-face.html#hb-face-set-user-data">
-<ANCHOR id="harfbuzz-hb-face.other_details" href="harfbuzz/harfbuzz-hb-face.html#harfbuzz-hb-face.other_details">
-<ANCHOR id="hb-face-t" href="harfbuzz/harfbuzz-hb-face.html#hb-face-t">
-<ANCHOR id="harfbuzz-hb-font" href="harfbuzz/harfbuzz-hb-font.html">
-<ANCHOR id="harfbuzz-hb-font.functions" href="harfbuzz/harfbuzz-hb-font.html#harfbuzz-hb-font.functions">
-<ANCHOR id="hb-font-funcs-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-t">
-<ANCHOR id="hb-font-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-t">
-<ANCHOR id="harfbuzz-hb-font.other" href="harfbuzz/harfbuzz-hb-font.html#harfbuzz-hb-font.other">
-<ANCHOR id="harfbuzz-hb-font.object-hierarchy" href="harfbuzz/harfbuzz-hb-font.html#harfbuzz-hb-font.object-hierarchy">
-<ANCHOR id="harfbuzz-hb-font.description" href="harfbuzz/harfbuzz-hb-font.html#harfbuzz-hb-font.description">
-<ANCHOR id="harfbuzz-hb-font.functions_details" href="harfbuzz/harfbuzz-hb-font.html#harfbuzz-hb-font.functions_details">
-<ANCHOR id="hb-font-add-glyph-origin-for-direction" href="harfbuzz/harfbuzz-hb-font.html#hb-font-add-glyph-origin-for-direction">
-<ANCHOR id="hb-font-create" href="harfbuzz/harfbuzz-hb-font.html#hb-font-create">
-<ANCHOR id="hb-font-create-sub-font" href="harfbuzz/harfbuzz-hb-font.html#hb-font-create-sub-font">
-<ANCHOR id="hb-font-destroy" href="harfbuzz/harfbuzz-hb-font.html#hb-font-destroy">
-<ANCHOR id="hb-font-funcs-create" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-create">
-<ANCHOR id="hb-font-funcs-destroy" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-destroy">
-<ANCHOR id="hb-font-funcs-get-empty" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-get-empty">
-<ANCHOR id="hb-font-funcs-get-user-data" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-get-user-data">
-<ANCHOR id="hb-font-funcs-is-immutable" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-is-immutable">
-<ANCHOR id="hb-font-funcs-make-immutable" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-make-immutable">
-<ANCHOR id="hb-font-funcs-reference" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-reference">
-<ANCHOR id="hb-font-funcs-set-glyph-contour-point-func" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-set-glyph-contour-point-func">
-<ANCHOR id="hb-font-funcs-set-glyph-extents-func" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-set-glyph-extents-func">
-<ANCHOR id="hb-font-funcs-set-glyph-from-name-func" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-set-glyph-from-name-func">
-<ANCHOR id="hb-font-funcs-set-glyph-func" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-set-glyph-func">
-<ANCHOR id="hb-font-funcs-set-glyph-h-advance-func" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-set-glyph-h-advance-func">
-<ANCHOR id="hb-font-funcs-set-glyph-h-kerning-func" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-set-glyph-h-kerning-func">
-<ANCHOR id="hb-font-funcs-set-glyph-h-origin-func" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-set-glyph-h-origin-func">
-<ANCHOR id="hb-font-funcs-set-glyph-name-func" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-set-glyph-name-func">
-<ANCHOR id="hb-font-funcs-set-glyph-v-advance-func" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-set-glyph-v-advance-func">
-<ANCHOR id="hb-font-funcs-set-glyph-v-kerning-func" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-set-glyph-v-kerning-func">
-<ANCHOR id="hb-font-funcs-set-glyph-v-origin-func" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-set-glyph-v-origin-func">
-<ANCHOR id="hb-font-funcs-set-user-data" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-set-user-data">
-<ANCHOR id="hb-font-get-empty" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-empty">
-<ANCHOR id="hb-font-get-face" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-face">
-<ANCHOR id="hb-font-get-glyph" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph">
-<ANCHOR id="hb-font-get-glyph-advance-for-direction" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-advance-for-direction">
-<ANCHOR id="hb-font-get-glyph-advance-func-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-advance-func-t">
-<ANCHOR id="hb-font-get-glyph-contour-point" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-contour-point">
-<ANCHOR id="hb-font-get-glyph-contour-point-for-origin" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-contour-point-for-origin">
-<ANCHOR id="hb-font-get-glyph-contour-point-func-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-contour-point-func-t">
-<ANCHOR id="hb-font-get-glyph-extents" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-extents">
-<ANCHOR id="hb-font-get-glyph-extents-for-origin" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-extents-for-origin">
-<ANCHOR id="hb-font-get-glyph-extents-func-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-extents-func-t">
-<ANCHOR id="hb-font-get-glyph-from-name" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-from-name">
-<ANCHOR id="hb-font-get-glyph-from-name-func-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-from-name-func-t">
-<ANCHOR id="hb-font-get-glyph-func-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-func-t">
-<ANCHOR id="hb-font-get-glyph-h-advance" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-h-advance">
-<ANCHOR id="hb-font-get-glyph-h-kerning" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-h-kerning">
-<ANCHOR id="hb-font-get-glyph-h-origin" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-h-origin">
-<ANCHOR id="hb-font-get-glyph-kerning-for-direction" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-kerning-for-direction">
-<ANCHOR id="hb-font-get-glyph-kerning-func-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-kerning-func-t">
-<ANCHOR id="hb-font-get-glyph-name" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-name">
-<ANCHOR id="hb-font-get-glyph-name-func-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-name-func-t">
-<ANCHOR id="hb-font-get-glyph-origin-for-direction" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-origin-for-direction">
-<ANCHOR id="hb-font-get-glyph-origin-func-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-origin-func-t">
-<ANCHOR id="hb-font-get-glyph-v-advance" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-v-advance">
-<ANCHOR id="hb-font-get-glyph-v-kerning" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-v-kerning">
-<ANCHOR id="hb-font-get-glyph-v-origin" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-v-origin">
-<ANCHOR id="hb-font-get-parent" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-parent">
-<ANCHOR id="hb-font-get-ppem" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-ppem">
-<ANCHOR id="hb-font-get-scale" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-scale">
-<ANCHOR id="hb-font-get-user-data" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-user-data">
-<ANCHOR id="hb-font-glyph-from-string" href="harfbuzz/harfbuzz-hb-font.html#hb-font-glyph-from-string">
-<ANCHOR id="hb-font-glyph-to-string" href="harfbuzz/harfbuzz-hb-font.html#hb-font-glyph-to-string">
-<ANCHOR id="hb-font-is-immutable" href="harfbuzz/harfbuzz-hb-font.html#hb-font-is-immutable">
-<ANCHOR id="hb-font-make-immutable" href="harfbuzz/harfbuzz-hb-font.html#hb-font-make-immutable">
-<ANCHOR id="hb-font-reference" href="harfbuzz/harfbuzz-hb-font.html#hb-font-reference">
-<ANCHOR id="hb-font-set-funcs" href="harfbuzz/harfbuzz-hb-font.html#hb-font-set-funcs">
-<ANCHOR id="hb-font-set-funcs-data" href="harfbuzz/harfbuzz-hb-font.html#hb-font-set-funcs-data">
-<ANCHOR id="hb-font-set-ppem" href="harfbuzz/harfbuzz-hb-font.html#hb-font-set-ppem">
-<ANCHOR id="hb-font-set-scale" href="harfbuzz/harfbuzz-hb-font.html#hb-font-set-scale">
-<ANCHOR id="hb-font-set-user-data" href="harfbuzz/harfbuzz-hb-font.html#hb-font-set-user-data">
-<ANCHOR id="hb-font-subtract-glyph-origin-for-direction" href="harfbuzz/harfbuzz-hb-font.html#hb-font-subtract-glyph-origin-for-direction">
-<ANCHOR id="hb-reference-table-func-t" href="harfbuzz/harfbuzz-hb-font.html#hb-reference-table-func-t">
-<ANCHOR id="harfbuzz-hb-font.other_details" href="harfbuzz/harfbuzz-hb-font.html#harfbuzz-hb-font.other_details">
-<ANCHOR id="hb-font-funcs-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-funcs-t">
-<ANCHOR id="hb-font-get-glyph-h-advance-func-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-h-advance-func-t">
-<ANCHOR id="hb-font-get-glyph-h-kerning-func-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-h-kerning-func-t">
-<ANCHOR id="hb-font-get-glyph-h-origin-func-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-h-origin-func-t">
-<ANCHOR id="hb-font-get-glyph-v-advance-func-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-v-advance-func-t">
-<ANCHOR id="hb-font-get-glyph-v-kerning-func-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-v-kerning-func-t">
-<ANCHOR id="hb-font-get-glyph-v-origin-func-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-get-glyph-v-origin-func-t">
-<ANCHOR id="hb-font-t" href="harfbuzz/harfbuzz-hb-font.html#hb-font-t">
-<ANCHOR id="harfbuzz-hb-shape" href="harfbuzz/harfbuzz-hb-shape.html">
-<ANCHOR id="harfbuzz-hb-shape.functions" href="harfbuzz/harfbuzz-hb-shape.html#harfbuzz-hb-shape.functions">
-<ANCHOR id="hb-feature-t" href="harfbuzz/harfbuzz-hb-shape.html#hb-feature-t">
-<ANCHOR id="harfbuzz-hb-shape.other" href="harfbuzz/harfbuzz-hb-shape.html#harfbuzz-hb-shape.other">
-<ANCHOR id="harfbuzz-hb-shape.object-hierarchy" href="harfbuzz/harfbuzz-hb-shape.html#harfbuzz-hb-shape.object-hierarchy">
-<ANCHOR id="harfbuzz-hb-shape.description" href="harfbuzz/harfbuzz-hb-shape.html#harfbuzz-hb-shape.description">
-<ANCHOR id="harfbuzz-hb-shape.functions_details" href="harfbuzz/harfbuzz-hb-shape.html#harfbuzz-hb-shape.functions_details">
-<ANCHOR id="hb-feature-from-string" href="harfbuzz/harfbuzz-hb-shape.html#hb-feature-from-string">
-<ANCHOR id="hb-feature-to-string" href="harfbuzz/harfbuzz-hb-shape.html#hb-feature-to-string">
-<ANCHOR id="hb-shape" href="harfbuzz/harfbuzz-hb-shape.html#hb-shape">
-<ANCHOR id="hb-shape-full" href="harfbuzz/harfbuzz-hb-shape.html#hb-shape-full">
-<ANCHOR id="hb-shape-list-shapers" href="harfbuzz/harfbuzz-hb-shape.html#hb-shape-list-shapers">
-<ANCHOR id="harfbuzz-hb-shape.other_details" href="harfbuzz/harfbuzz-hb-shape.html#harfbuzz-hb-shape.other_details">
-<ANCHOR id="hb-feature-t-struct" href="harfbuzz/harfbuzz-hb-shape.html#hb-feature-t-struct">
-<ANCHOR id="harfbuzz-hb-version" href="harfbuzz/harfbuzz-hb-version.html">
-<ANCHOR id="harfbuzz-hb-version.functions" href="harfbuzz/harfbuzz-hb-version.html#harfbuzz-hb-version.functions">
-<ANCHOR id="harfbuzz-hb-version.other" href="harfbuzz/harfbuzz-hb-version.html#harfbuzz-hb-version.other">
-<ANCHOR id="harfbuzz-hb-version.description" href="harfbuzz/harfbuzz-hb-version.html#harfbuzz-hb-version.description">
-<ANCHOR id="harfbuzz-hb-version.functions_details" href="harfbuzz/harfbuzz-hb-version.html#harfbuzz-hb-version.functions_details">
-<ANCHOR id="hb-version" href="harfbuzz/harfbuzz-hb-version.html#hb-version">
-<ANCHOR id="hb-version-string" href="harfbuzz/harfbuzz-hb-version.html#hb-version-string">
-<ANCHOR id="harfbuzz-hb-version.other_details" href="harfbuzz/harfbuzz-hb-version.html#harfbuzz-hb-version.other_details">
-<ANCHOR id="HB-VERSION-MAJOR:CAPS" href="harfbuzz/harfbuzz-hb-version.html#HB-VERSION-MAJOR:CAPS">
-<ANCHOR id="HB-VERSION-MICRO:CAPS" href="harfbuzz/harfbuzz-hb-version.html#HB-VERSION-MICRO:CAPS">
-<ANCHOR id="HB-VERSION-MINOR:CAPS" href="harfbuzz/harfbuzz-hb-version.html#HB-VERSION-MINOR:CAPS">
-<ANCHOR id="HB-VERSION-STRING:CAPS" href="harfbuzz/harfbuzz-hb-version.html#HB-VERSION-STRING:CAPS">
-<ANCHOR id="harfbuzz-hb-deprecated" href="harfbuzz/harfbuzz-hb-deprecated.html">
-<ANCHOR id="harfbuzz-hb-deprecated.other" href="harfbuzz/harfbuzz-hb-deprecated.html#harfbuzz-hb-deprecated.other">
-<ANCHOR id="harfbuzz-hb-deprecated.description" href="harfbuzz/harfbuzz-hb-deprecated.html#harfbuzz-hb-deprecated.description">
-<ANCHOR id="harfbuzz-hb-deprecated.functions_details" href="harfbuzz/harfbuzz-hb-deprecated.html#harfbuzz-hb-deprecated.functions_details">
-<ANCHOR id="harfbuzz-hb-deprecated.other_details" href="harfbuzz/harfbuzz-hb-deprecated.html#harfbuzz-hb-deprecated.other_details">
-<ANCHOR id="HB-BUFFER-FLAGS-DEFAULT:CAPS" href="harfbuzz/harfbuzz-hb-deprecated.html#HB-BUFFER-FLAGS-DEFAULT:CAPS">
-<ANCHOR id="HB-BUFFER-SERIALIZE-FLAGS-DEFAULT:CAPS" href="harfbuzz/harfbuzz-hb-deprecated.html#HB-BUFFER-SERIALIZE-FLAGS-DEFAULT:CAPS">
-<ANCHOR id="HB-SCRIPT-CANADIAN-ABORIGINAL:CAPS" href="harfbuzz/harfbuzz-hb-deprecated.html#HB-SCRIPT-CANADIAN-ABORIGINAL:CAPS">
-<ANCHOR id="harfbuzz-hb-set" href="harfbuzz/harfbuzz-hb-set.html">
-<ANCHOR id="harfbuzz-hb-set.functions" href="harfbuzz/harfbuzz-hb-set.html#harfbuzz-hb-set.functions">
-<ANCHOR id="hb-set-t" href="harfbuzz/harfbuzz-hb-set.html#hb-set-t">
-<ANCHOR id="harfbuzz-hb-set.other" href="harfbuzz/harfbuzz-hb-set.html#harfbuzz-hb-set.other">
-<ANCHOR id="harfbuzz-hb-set.object-hierarchy" href="harfbuzz/harfbuzz-hb-set.html#harfbuzz-hb-set.object-hierarchy">
-<ANCHOR id="harfbuzz-hb-set.description" href="harfbuzz/harfbuzz-hb-set.html#harfbuzz-hb-set.description">
-<ANCHOR id="harfbuzz-hb-set.functions_details" href="harfbuzz/harfbuzz-hb-set.html#harfbuzz-hb-set.functions_details">
-<ANCHOR id="HB-SET-VALUE-INVALID:CAPS" href="harfbuzz/harfbuzz-hb-set.html#HB-SET-VALUE-INVALID:CAPS">
-<ANCHOR id="hb-set-add" href="harfbuzz/harfbuzz-hb-set.html#hb-set-add">
-<ANCHOR id="hb-set-add-range" href="harfbuzz/harfbuzz-hb-set.html#hb-set-add-range">
-<ANCHOR id="hb-set-allocation-successful" href="harfbuzz/harfbuzz-hb-set.html#hb-set-allocation-successful">
-<ANCHOR id="hb-set-clear" href="harfbuzz/harfbuzz-hb-set.html#hb-set-clear">
-<ANCHOR id="hb-set-create" href="harfbuzz/harfbuzz-hb-set.html#hb-set-create">
-<ANCHOR id="hb-set-del" href="harfbuzz/harfbuzz-hb-set.html#hb-set-del">
-<ANCHOR id="hb-set-del-range" href="harfbuzz/harfbuzz-hb-set.html#hb-set-del-range">
-<ANCHOR id="hb-set-destroy" href="harfbuzz/harfbuzz-hb-set.html#hb-set-destroy">
-<ANCHOR id="hb-set-get-empty" href="harfbuzz/harfbuzz-hb-set.html#hb-set-get-empty">
-<ANCHOR id="hb-set-get-max" href="harfbuzz/harfbuzz-hb-set.html#hb-set-get-max">
-<ANCHOR id="hb-set-get-min" href="harfbuzz/harfbuzz-hb-set.html#hb-set-get-min">
-<ANCHOR id="hb-set-get-population" href="harfbuzz/harfbuzz-hb-set.html#hb-set-get-population">
-<ANCHOR id="hb-set-get-user-data" href="harfbuzz/harfbuzz-hb-set.html#hb-set-get-user-data">
-<ANCHOR id="hb-set-has" href="harfbuzz/harfbuzz-hb-set.html#hb-set-has">
-<ANCHOR id="hb-set-intersect" href="harfbuzz/harfbuzz-hb-set.html#hb-set-intersect">
-<ANCHOR id="hb-set-invert" href="harfbuzz/harfbuzz-hb-set.html#hb-set-invert">
-<ANCHOR id="hb-set-is-empty" href="harfbuzz/harfbuzz-hb-set.html#hb-set-is-empty">
-<ANCHOR id="hb-set-is-equal" href="harfbuzz/harfbuzz-hb-set.html#hb-set-is-equal">
-<ANCHOR id="hb-set-next" href="harfbuzz/harfbuzz-hb-set.html#hb-set-next">
-<ANCHOR id="hb-set-next-range" href="harfbuzz/harfbuzz-hb-set.html#hb-set-next-range">
-<ANCHOR id="hb-set-reference" href="harfbuzz/harfbuzz-hb-set.html#hb-set-reference">
-<ANCHOR id="hb-set-set" href="harfbuzz/harfbuzz-hb-set.html#hb-set-set">
-<ANCHOR id="hb-set-set-user-data" href="harfbuzz/harfbuzz-hb-set.html#hb-set-set-user-data">
-<ANCHOR id="hb-set-subtract" href="harfbuzz/harfbuzz-hb-set.html#hb-set-subtract">
-<ANCHOR id="hb-set-symmetric-difference" href="harfbuzz/harfbuzz-hb-set.html#hb-set-symmetric-difference">
-<ANCHOR id="hb-set-union" href="harfbuzz/harfbuzz-hb-set.html#hb-set-union">
-<ANCHOR id="harfbuzz-hb-set.other_details" href="harfbuzz/harfbuzz-hb-set.html#harfbuzz-hb-set.other_details">
-<ANCHOR id="hb-set-t" href="harfbuzz/harfbuzz-hb-set.html#hb-set-t">
-<ANCHOR id="harfbuzz-hb-ot" href="harfbuzz/harfbuzz-hb-ot.html">
-<ANCHOR id="harfbuzz-hb-ot.description" href="harfbuzz/harfbuzz-hb-ot.html#harfbuzz-hb-ot.description">
-<ANCHOR id="harfbuzz-hb-ot.functions_details" href="harfbuzz/harfbuzz-hb-ot.html#harfbuzz-hb-ot.functions_details">
-<ANCHOR id="harfbuzz-hb-ot.other_details" href="harfbuzz/harfbuzz-hb-ot.html#harfbuzz-hb-ot.other_details">
-<ANCHOR id="harfbuzz-hb-ot-layout" href="harfbuzz/harfbuzz-hb-ot-layout.html">
-<ANCHOR id="harfbuzz-hb-ot-layout.functions" href="harfbuzz/harfbuzz-hb-ot-layout.html#harfbuzz-hb-ot-layout.functions">
-<ANCHOR id="harfbuzz-hb-ot-layout.other" href="harfbuzz/harfbuzz-hb-ot-layout.html#harfbuzz-hb-ot-layout.other">
-<ANCHOR id="harfbuzz-hb-ot-layout.object-hierarchy" href="harfbuzz/harfbuzz-hb-ot-layout.html#harfbuzz-hb-ot-layout.object-hierarchy">
-<ANCHOR id="harfbuzz-hb-ot-layout.description" href="harfbuzz/harfbuzz-hb-ot-layout.html#harfbuzz-hb-ot-layout.description">
-<ANCHOR id="harfbuzz-hb-ot-layout.functions_details" href="harfbuzz/harfbuzz-hb-ot-layout.html#harfbuzz-hb-ot-layout.functions_details">
-<ANCHOR id="hb-ot-layout-collect-lookups" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-collect-lookups">
-<ANCHOR id="hb-ot-layout-feature-get-lookups" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-feature-get-lookups">
-<ANCHOR id="hb-ot-layout-get-attach-points" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-get-attach-points">
-<ANCHOR id="hb-ot-layout-get-glyph-class" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-get-glyph-class">
-<ANCHOR id="hb-ot-layout-get-glyphs-in-class" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-get-glyphs-in-class">
-<ANCHOR id="hb-ot-layout-get-ligature-carets" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-get-ligature-carets">
-<ANCHOR id="hb-ot-layout-get-size-params" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-get-size-params">
-<ANCHOR id="hb-ot-layout-glyph-sequence-func-t" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-glyph-sequence-func-t">
-<ANCHOR id="hb-ot-layout-has-glyph-classes" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-has-glyph-classes">
-<ANCHOR id="hb-ot-layout-has-positioning" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-has-positioning">
-<ANCHOR id="hb-ot-layout-has-substitution" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-has-substitution">
-<ANCHOR id="hb-ot-layout-language-find-feature" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-language-find-feature">
-<ANCHOR id="hb-ot-layout-language-get-feature-indexes" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-language-get-feature-indexes">
-<ANCHOR id="hb-ot-layout-language-get-feature-tags" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-language-get-feature-tags">
-<ANCHOR id="hb-ot-layout-language-get-required-feature" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-language-get-required-feature">
-<ANCHOR id="hb-ot-layout-lookup-collect-glyphs" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-lookup-collect-glyphs">
-<ANCHOR id="hb-ot-layout-lookup-substitute-closure" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-lookup-substitute-closure">
-<ANCHOR id="hb-ot-layout-lookup-would-substitute" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-lookup-would-substitute">
-<ANCHOR id="hb-ot-layout-script-find-language" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-script-find-language">
-<ANCHOR id="hb-ot-layout-script-get-language-tags" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-script-get-language-tags">
-<ANCHOR id="hb-ot-layout-table-choose-script" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-table-choose-script">
-<ANCHOR id="hb-ot-layout-table-find-script" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-table-find-script">
-<ANCHOR id="hb-ot-layout-table-get-feature-tags" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-table-get-feature-tags">
-<ANCHOR id="hb-ot-layout-table-get-script-tags" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-table-get-script-tags">
-<ANCHOR id="hb-ot-layout-table-get-lookup-count" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-table-get-lookup-count">
-<ANCHOR id="hb-ot-shape-plan-collect-lookups" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-shape-plan-collect-lookups">
-<ANCHOR id="harfbuzz-hb-ot-layout.other_details" href="harfbuzz/harfbuzz-hb-ot-layout.html#harfbuzz-hb-ot-layout.other_details">
-<ANCHOR id="HB-OT-LAYOUT-DEFAULT-LANGUAGE-INDEX:CAPS" href="harfbuzz/harfbuzz-hb-ot-layout.html#HB-OT-LAYOUT-DEFAULT-LANGUAGE-INDEX:CAPS">
-<ANCHOR id="HB-OT-LAYOUT-NO-FEATURE-INDEX:CAPS" href="harfbuzz/harfbuzz-hb-ot-layout.html#HB-OT-LAYOUT-NO-FEATURE-INDEX:CAPS">
-<ANCHOR id="HB-OT-LAYOUT-NO-SCRIPT-INDEX:CAPS" href="harfbuzz/harfbuzz-hb-ot-layout.html#HB-OT-LAYOUT-NO-SCRIPT-INDEX:CAPS">
-<ANCHOR id="HB-OT-TAG-GDEF:CAPS" href="harfbuzz/harfbuzz-hb-ot-layout.html#HB-OT-TAG-GDEF:CAPS">
-<ANCHOR id="HB-OT-TAG-GPOS:CAPS" href="harfbuzz/harfbuzz-hb-ot-layout.html#HB-OT-TAG-GPOS:CAPS">
-<ANCHOR id="HB-OT-TAG-GSUB:CAPS" href="harfbuzz/harfbuzz-hb-ot-layout.html#HB-OT-TAG-GSUB:CAPS">
-<ANCHOR id="hb-ot-layout-glyph-class-t" href="harfbuzz/harfbuzz-hb-ot-layout.html#hb-ot-layout-glyph-class-t">
-<ANCHOR id="harfbuzz-hb-ot-tag" href="harfbuzz/harfbuzz-hb-ot-tag.html">
-<ANCHOR id="harfbuzz-hb-ot-tag.functions" href="harfbuzz/harfbuzz-hb-ot-tag.html#harfbuzz-hb-ot-tag.functions">
-<ANCHOR id="harfbuzz-hb-ot-tag.other" href="harfbuzz/harfbuzz-hb-ot-tag.html#harfbuzz-hb-ot-tag.other">
-<ANCHOR id="harfbuzz-hb-ot-tag.description" href="harfbuzz/harfbuzz-hb-ot-tag.html#harfbuzz-hb-ot-tag.description">
-<ANCHOR id="harfbuzz-hb-ot-tag.functions_details" href="harfbuzz/harfbuzz-hb-ot-tag.html#harfbuzz-hb-ot-tag.functions_details">
-<ANCHOR id="hb-ot-tag-from-language" href="harfbuzz/harfbuzz-hb-ot-tag.html#hb-ot-tag-from-language">
-<ANCHOR id="hb-ot-tag-to-language" href="harfbuzz/harfbuzz-hb-ot-tag.html#hb-ot-tag-to-language">
-<ANCHOR id="hb-ot-tag-to-script" href="harfbuzz/harfbuzz-hb-ot-tag.html#hb-ot-tag-to-script">
-<ANCHOR id="hb-ot-tags-from-script" href="harfbuzz/harfbuzz-hb-ot-tag.html#hb-ot-tags-from-script">
-<ANCHOR id="harfbuzz-hb-ot-tag.other_details" href="harfbuzz/harfbuzz-hb-ot-tag.html#harfbuzz-hb-ot-tag.other_details">
-<ANCHOR id="HB-OT-TAG-DEFAULT-LANGUAGE:CAPS" href="harfbuzz/harfbuzz-hb-ot-tag.html#HB-OT-TAG-DEFAULT-LANGUAGE:CAPS">
-<ANCHOR id="HB-OT-TAG-DEFAULT-SCRIPT:CAPS" href="harfbuzz/harfbuzz-hb-ot-tag.html#HB-OT-TAG-DEFAULT-SCRIPT:CAPS">
-<ANCHOR id="harfbuzz-hb-shape-plan" href="harfbuzz/harfbuzz-hb-shape-plan.html">
-<ANCHOR id="harfbuzz-hb-shape-plan.functions" href="harfbuzz/harfbuzz-hb-shape-plan.html#harfbuzz-hb-shape-plan.functions">
-<ANCHOR id="hb-shape-plan-t" href="harfbuzz/harfbuzz-hb-shape-plan.html#hb-shape-plan-t">
-<ANCHOR id="harfbuzz-hb-shape-plan.other" href="harfbuzz/harfbuzz-hb-shape-plan.html#harfbuzz-hb-shape-plan.other">
-<ANCHOR id="harfbuzz-hb-shape-plan.object-hierarchy" href="harfbuzz/harfbuzz-hb-shape-plan.html#harfbuzz-hb-shape-plan.object-hierarchy">
-<ANCHOR id="harfbuzz-hb-shape-plan.description" href="harfbuzz/harfbuzz-hb-shape-plan.html#harfbuzz-hb-shape-plan.description">
-<ANCHOR id="harfbuzz-hb-shape-plan.functions_details" href="harfbuzz/harfbuzz-hb-shape-plan.html#harfbuzz-hb-shape-plan.functions_details">
-<ANCHOR id="hb-shape-plan-create" href="harfbuzz/harfbuzz-hb-shape-plan.html#hb-shape-plan-create">
-<ANCHOR id="hb-shape-plan-create-cached" href="harfbuzz/harfbuzz-hb-shape-plan.html#hb-shape-plan-create-cached">
-<ANCHOR id="hb-shape-plan-destroy" href="harfbuzz/harfbuzz-hb-shape-plan.html#hb-shape-plan-destroy">
-<ANCHOR id="hb-shape-plan-execute" href="harfbuzz/harfbuzz-hb-shape-plan.html#hb-shape-plan-execute">
-<ANCHOR id="hb-shape-plan-get-empty" href="harfbuzz/harfbuzz-hb-shape-plan.html#hb-shape-plan-get-empty">
-<ANCHOR id="hb-shape-plan-get-shaper" href="harfbuzz/harfbuzz-hb-shape-plan.html#hb-shape-plan-get-shaper">
-<ANCHOR id="hb-shape-plan-get-user-data" href="harfbuzz/harfbuzz-hb-shape-plan.html#hb-shape-plan-get-user-data">
-<ANCHOR id="hb-shape-plan-reference" href="harfbuzz/harfbuzz-hb-shape-plan.html#hb-shape-plan-reference">
-<ANCHOR id="hb-shape-plan-set-user-data" href="harfbuzz/harfbuzz-hb-shape-plan.html#hb-shape-plan-set-user-data">
-<ANCHOR id="harfbuzz-hb-shape-plan.other_details" href="harfbuzz/harfbuzz-hb-shape-plan.html#harfbuzz-hb-shape-plan.other_details">
-<ANCHOR id="hb-shape-plan-t" href="harfbuzz/harfbuzz-hb-shape-plan.html#hb-shape-plan-t">
-<ANCHOR id="harfbuzz-hb-glib" href="harfbuzz/harfbuzz-hb-glib.html">
-<ANCHOR id="harfbuzz-hb-glib.functions" href="harfbuzz/harfbuzz-hb-glib.html#harfbuzz-hb-glib.functions">
-<ANCHOR id="harfbuzz-hb-glib.description" href="harfbuzz/harfbuzz-hb-glib.html#harfbuzz-hb-glib.description">
-<ANCHOR id="harfbuzz-hb-glib.functions_details" href="harfbuzz/harfbuzz-hb-glib.html#harfbuzz-hb-glib.functions_details">
-<ANCHOR id="hb-glib-get-unicode-funcs" href="harfbuzz/harfbuzz-hb-glib.html#hb-glib-get-unicode-funcs">
-<ANCHOR id="hb-glib-script-from-script" href="harfbuzz/harfbuzz-hb-glib.html#hb-glib-script-from-script">
-<ANCHOR id="hb-glib-script-to-script" href="harfbuzz/harfbuzz-hb-glib.html#hb-glib-script-to-script">
-<ANCHOR id="harfbuzz-hb-glib.other_details" href="harfbuzz/harfbuzz-hb-glib.html#harfbuzz-hb-glib.other_details">
-<ANCHOR id="harfbuzz-hb-icu" href="harfbuzz/harfbuzz-hb-icu.html">
-<ANCHOR id="harfbuzz-hb-icu.functions" href="harfbuzz/harfbuzz-hb-icu.html#harfbuzz-hb-icu.functions">
-<ANCHOR id="harfbuzz-hb-icu.description" href="harfbuzz/harfbuzz-hb-icu.html#harfbuzz-hb-icu.description">
-<ANCHOR id="harfbuzz-hb-icu.functions_details" href="harfbuzz/harfbuzz-hb-icu.html#harfbuzz-hb-icu.functions_details">
-<ANCHOR id="hb-icu-get-unicode-funcs" href="harfbuzz/harfbuzz-hb-icu.html#hb-icu-get-unicode-funcs">
-<ANCHOR id="hb-icu-script-from-script" href="harfbuzz/harfbuzz-hb-icu.html#hb-icu-script-from-script">
-<ANCHOR id="hb-icu-script-to-script" href="harfbuzz/harfbuzz-hb-icu.html#hb-icu-script-to-script">
-<ANCHOR id="harfbuzz-hb-icu.other_details" href="harfbuzz/harfbuzz-hb-icu.html#harfbuzz-hb-icu.other_details">
-<ANCHOR id="harfbuzz-hb-ft" href="harfbuzz/harfbuzz-hb-ft.html">
-<ANCHOR id="harfbuzz-hb-ft.functions" href="harfbuzz/harfbuzz-hb-ft.html#harfbuzz-hb-ft.functions">
-<ANCHOR id="harfbuzz-hb-ft.description" href="harfbuzz/harfbuzz-hb-ft.html#harfbuzz-hb-ft.description">
-<ANCHOR id="harfbuzz-hb-ft.functions_details" href="harfbuzz/harfbuzz-hb-ft.html#harfbuzz-hb-ft.functions_details">
-<ANCHOR id="hb-ft-face-create" href="harfbuzz/harfbuzz-hb-ft.html#hb-ft-face-create">
-<ANCHOR id="hb-ft-face-create-cached" href="harfbuzz/harfbuzz-hb-ft.html#hb-ft-face-create-cached">
-<ANCHOR id="hb-ft-font-create" href="harfbuzz/harfbuzz-hb-ft.html#hb-ft-font-create">
-<ANCHOR id="hb-ft-font-get-face" href="harfbuzz/harfbuzz-hb-ft.html#hb-ft-font-get-face">
-<ANCHOR id="hb-ft-font-set-funcs" href="harfbuzz/harfbuzz-hb-ft.html#hb-ft-font-set-funcs">
-<ANCHOR id="harfbuzz-hb-ft.other_details" href="harfbuzz/harfbuzz-hb-ft.html#harfbuzz-hb-ft.other_details">
-<ANCHOR id="harfbuzz-hb-graphite2" href="harfbuzz/harfbuzz-hb-graphite2.html">
-<ANCHOR id="harfbuzz-hb-graphite2.functions" href="harfbuzz/harfbuzz-hb-graphite2.html#harfbuzz-hb-graphite2.functions">
-<ANCHOR id="harfbuzz-hb-graphite2.other" href="harfbuzz/harfbuzz-hb-graphite2.html#harfbuzz-hb-graphite2.other">
-<ANCHOR id="harfbuzz-hb-graphite2.description" href="harfbuzz/harfbuzz-hb-graphite2.html#harfbuzz-hb-graphite2.description">
-<ANCHOR id="harfbuzz-hb-graphite2.functions_details" href="harfbuzz/harfbuzz-hb-graphite2.html#harfbuzz-hb-graphite2.functions_details">
-<ANCHOR id="hb-graphite2-face-get-gr-face" href="harfbuzz/harfbuzz-hb-graphite2.html#hb-graphite2-face-get-gr-face">
-<ANCHOR id="hb-graphite2-font-get-gr-font" href="harfbuzz/harfbuzz-hb-graphite2.html#hb-graphite2-font-get-gr-font">
-<ANCHOR id="harfbuzz-hb-graphite2.other_details" href="harfbuzz/harfbuzz-hb-graphite2.html#harfbuzz-hb-graphite2.other_details">
-<ANCHOR id="HB-GRAPHITE2-TAG-SILF:CAPS" href="harfbuzz/harfbuzz-hb-graphite2.html#HB-GRAPHITE2-TAG-SILF:CAPS">
-<ANCHOR id="harfbuzz-hb-uniscribe" href="harfbuzz/harfbuzz-hb-uniscribe.html">
-<ANCHOR id="harfbuzz-hb-uniscribe.functions" href="harfbuzz/harfbuzz-hb-uniscribe.html#harfbuzz-hb-uniscribe.functions">
-<ANCHOR id="harfbuzz-hb-uniscribe.description" href="harfbuzz/harfbuzz-hb-uniscribe.html#harfbuzz-hb-uniscribe.description">
-<ANCHOR id="harfbuzz-hb-uniscribe.functions_details" href="harfbuzz/harfbuzz-hb-uniscribe.html#harfbuzz-hb-uniscribe.functions_details">
-<ANCHOR id="hb-uniscribe-font-get-hfont" href="harfbuzz/harfbuzz-hb-uniscribe.html#hb-uniscribe-font-get-hfont">
-<ANCHOR id="hb-uniscribe-font-get-logfontw" href="harfbuzz/harfbuzz-hb-uniscribe.html#hb-uniscribe-font-get-logfontw">
-<ANCHOR id="harfbuzz-hb-uniscribe.other_details" href="harfbuzz/harfbuzz-hb-uniscribe.html#harfbuzz-hb-uniscribe.other_details">
-<ANCHOR id="harfbuzz-hb-coretext" href="harfbuzz/harfbuzz-hb-coretext.html">
-<ANCHOR id="harfbuzz-hb-coretext.functions" href="harfbuzz/harfbuzz-hb-coretext.html#harfbuzz-hb-coretext.functions">
-<ANCHOR id="harfbuzz-hb-coretext.other" href="harfbuzz/harfbuzz-hb-coretext.html#harfbuzz-hb-coretext.other">
-<ANCHOR id="harfbuzz-hb-coretext.description" href="harfbuzz/harfbuzz-hb-coretext.html#harfbuzz-hb-coretext.description">
-<ANCHOR id="harfbuzz-hb-coretext.functions_details" href="harfbuzz/harfbuzz-hb-coretext.html#harfbuzz-hb-coretext.functions_details">
-<ANCHOR id="hb-coretext-face-create" href="harfbuzz/harfbuzz-hb-coretext.html#hb-coretext-face-create">
-<ANCHOR id="hb-coretext-face-get-cg-font" href="harfbuzz/harfbuzz-hb-coretext.html#hb-coretext-face-get-cg-font">
-<ANCHOR id="hb-coretext-font-get-ct-font" href="harfbuzz/harfbuzz-hb-coretext.html#hb-coretext-font-get-ct-font">
-<ANCHOR id="harfbuzz-hb-coretext.other_details" href="harfbuzz/harfbuzz-hb-coretext.html#harfbuzz-hb-coretext.other_details">
-<ANCHOR id="HB-CORETEXT-TAG-MORT:CAPS" href="harfbuzz/harfbuzz-hb-coretext.html#HB-CORETEXT-TAG-MORT:CAPS">
-<ANCHOR id="HB-CORETEXT-TAG-MORX:CAPS" href="harfbuzz/harfbuzz-hb-coretext.html#HB-CORETEXT-TAG-MORX:CAPS">
-<ANCHOR id="harfbuzz-hb-gobject" href="harfbuzz/harfbuzz-hb-gobject.html">
-<ANCHOR id="harfbuzz-hb-gobject.description" href="harfbuzz/harfbuzz-hb-gobject.html#harfbuzz-hb-gobject.description">
-<ANCHOR id="harfbuzz-hb-gobject.functions_details" href="harfbuzz/harfbuzz-hb-gobject.html#harfbuzz-hb-gobject.functions_details">
-<ANCHOR id="harfbuzz-hb-gobject.other_details" href="harfbuzz/harfbuzz-hb-gobject.html#harfbuzz-hb-gobject.other_details">
-<ANCHOR id="annotation-glossterm-array" href="harfbuzz/annotation-glossary.html#annotation-glossterm-array">
-<ANCHOR id="annotation-glossterm-closure" href="harfbuzz/annotation-glossary.html#annotation-glossterm-closure">
-<ANCHOR id="annotation-glossterm-destroy" href="harfbuzz/annotation-glossary.html#annotation-glossterm-destroy">
-<ANCHOR id="annotation-glossterm-element-type" href="harfbuzz/annotation-glossary.html#annotation-glossterm-element-type">
-<ANCHOR id="annotation-glossterm-inout" href="harfbuzz/annotation-glossary.html#annotation-glossterm-inout">
-<ANCHOR id="annotation-glossterm-out" href="harfbuzz/annotation-glossary.html#annotation-glossterm-out">
-<ANCHOR id="annotation-glossterm-scope notified" href="harfbuzz/annotation-glossary.html#annotation-glossterm-scope notified">
-<ANCHOR id="annotation-glossterm-transfer full" href="harfbuzz/annotation-glossary.html#annotation-glossterm-transfer full">
-<ANCHOR id="annotation-glossterm-transfer none" href="harfbuzz/annotation-glossary.html#annotation-glossterm-transfer none">
diff --git a/docs/reference/version.xml b/docs/reference/version.xml
deleted file mode 100644
index f81283f..0000000
--- a/docs/reference/version.xml
+++ /dev/null
@@ -1 +0,0 @@
-0.9.40
diff --git a/docs/usermanual-buffers-language-script-and-direction.xml b/docs/usermanual-buffers-language-script-and-direction.xml
new file mode 100644
index 0000000..3a26c55
--- /dev/null
+++ b/docs/usermanual-buffers-language-script-and-direction.xml
@@ -0,0 +1,77 @@
+<chapter id="buffers-language-script-and-direction">
+ <title>Buffers, language, script and direction</title>
+ <para>
+ The input to Harfbuzz is a series of Unicode characters, stored in a
+ buffer. In this chapter, we'll look at how to set up a buffer with
+ the text that we want and then customize the properties of the
+ buffer.
+ </para>
+ <section id="creating-and-destroying-buffers">
+ <title>Creating and destroying buffers</title>
+ <para>
+ As we saw in our initial example, a buffer is created and
+ initialized with <literal>hb_buffer_create()</literal>. This
+ produces a new, empty buffer object, instantiated with some
+ default values and ready to accept your Unicode strings.
+ </para>
+ <para>
+ Harfbuzz manages the memory of objects that it creates (such as
+ buffers), so you don't have to. When you have finished working on
+ a buffer, you can call <literal>hb_buffer_destroy()</literal>:
+ </para>
+ <programlisting language="C">
+ hb_buffer_t *buffer = hb_buffer_create();
+ ...
+ hb_buffer_destroy(buffer);
+</programlisting>
+ <para>
+ This will destroy the object and free its associated memory -
+ unless some other part of the program holds a reference to this
+ buffer. If you acquire a Harfbuzz buffer from another subsystem
+ and want to ensure that it is not garbage collected by someone
+ else destroying it, you should increase its reference count:
+ </para>
+ <programlisting language="C">
+void somefunc(hb_buffer_t *buffer) {
+ buffer = hb_buffer_reference(buffer);
+ ...
+</programlisting>
+ <para>
+ And then decrease it once you're done with it:
+ </para>
+ <programlisting language="C">
+ hb_buffer_destroy(buffer);
+}
+</programlisting>
+ <para>
+ To throw away all the data in your buffer and start from scratch,
+ call <literal>hb_buffer_reset(buffer)</literal>. If you want to
+ throw away the string in the buffer but keep the options, you can
+ instead call <literal>hb_buffer_clear_contents(buffer)</literal>.
+ </para>
+ </section>
+ <section id="adding-text-to-the-buffer">
+ <title>Adding text to the buffer</title>
+ <para>
+ Now we have a brand new Harfbuzz buffer. Let's start filling it
+ with text! From Harfbuzz's perspective, a buffer is just a stream
+ of Unicode codepoints, but your input string is probably in one of
+ the standard Unicode character encodings (UTF-8, UTF-16, UTF-32)
+ </para>
+ </section>
+ <section id="setting-buffer-properties">
+ <title>Setting buffer properties</title>
+ <para>
+ </para>
+ </section>
+ <section id="what-about-the-other-scripts">
+ <title>What about the other scripts?</title>
+ <para>
+ </para>
+ </section>
+ <section id="customizing-unicode-functions">
+ <title>Customizing Unicode functions</title>
+ <para>
+ </para>
+ </section>
+</chapter> \ No newline at end of file
diff --git a/docs/usermanual-clusters.xml b/docs/usermanual-clusters.xml
new file mode 100644
index 0000000..8b64bde
--- /dev/null
+++ b/docs/usermanual-clusters.xml
@@ -0,0 +1,304 @@
+<chapter id="clusters">
+<sect1 id="clusters">
+ <title>Clusters</title>
+ <para>
+ In shaping text, a <emphasis>cluster</emphasis> is a sequence of
+ code points that needs to be treated as a single, indivisible unit.
+ </para>
+ <para>
+ When you add text to a HB buffer, each character is associated with
+ a <emphasis>cluster value</emphasis>. This is an arbitrary number as
+ far as HB is concerned.
+ </para>
+ <para>
+ Most clients will use UTF-8, UTF-16, or UTF-32 indices, but the
+ actual number does not matter. Moreover, it is not required for the
+ cluster values to be monotonically increasing, but pretty much all
+ of HB's tests are performed on monotonically increasing cluster
+ numbers. Nevertheless, there is no such assumption in the code
+ itself. With that in mind, let's examine what happens with cluster
+ values during shaping under each cluster-level.
+ </para>
+ <para>
+ HarfBuzz provides three <emphasis>levels</emphasis> of clustering
+ support. Level 0 is the default behavior and reproduces the behavior
+ of the old HarfBuzz library. Level 1 tweaks this behavior slightly
+ to produce better results, so level 1 clustering is recommended for
+ code that is not required to implement backward compatibility with
+ the old HarfBuzz.
+ </para>
+ <para>
+ Level 2 differs significantly in how it treats cluster values.
+ Levels 0 and 1 both process ligatures and glyph decomposition by
+ merging clusters; level 2 does not.
+ </para>
+ <para>
+ The conceptual model for what the cluster values mean, in levels 0
+ and 1, is this:
+ </para>
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>
+ the sequence of cluster values will always remain monotone
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ each value represents a single cluster
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ each cluster contains one or more glyphs and one or more
+ characters
+ </para>
+ </listitem>
+ </itemizedlist>
+ <para>
+ Assuming that initial cluster numbers were monotonically increasing
+ and distinct, then all adjacent glyphs having the same cluster
+ number belong to the same cluster, and all characters belong to the
+ cluster that has the highest number not larger than their initial
+ cluster number. This will become clearer with an example.
+ </para>
+</sect1>
+<sect1 id="a-clustering-example-for-levels-0-and-1">
+ <title>A clustering example for levels 0 and 1</title>
+ <para>
+ Let's say we start with the following character sequence and cluster
+ values:
+ </para>
+ <programlisting>
+ A,B,C,D,E
+ 0,1,2,3,4
+</programlisting>
+ <para>
+ We then map the characters to glyphs. For simplicity, let's assume
+ that each character maps to the corresponding, identical-looking
+ glyph:
+ </para>
+ <programlisting>
+ A,B,C,D,E
+ 0,1,2,3,4
+</programlisting>
+ <para>
+ Now if, for example, <literal>B</literal> and <literal>C</literal>
+ ligate, then the clusters to which they belong &quot;merge&quot;.
+ This merged cluster takes for its cluster number the minimum of all
+ the cluster numbers of the clusters that went in. In this case, we
+ get:
+ </para>
+ <programlisting>
+ A,BC,D,E
+ 0,1 ,3,4
+</programlisting>
+ <para>
+ Now let's assume that the <literal>BC</literal> glyph decomposes
+ into three components, and <literal>D</literal> also decomposes into
+ two. The components each inherit the cluster value of their parent:
+ </para>
+ <programlisting>
+ A,BC0,BC1,BC2,D0,D1,E
+ 0,1 ,1 ,1 ,3 ,3 ,4
+</programlisting>
+ <para>
+ Now if <literal>BC2</literal> and <literal>D0</literal> ligate, then
+ their clusters (numbers 1 and 3) merge into
+ <literal>min(1,3) = 1</literal>:
+ </para>
+ <programlisting>
+ A,BC0,BC1,BC2D0,D1,E
+ 0,1 ,1 ,1 ,1 ,4
+</programlisting>
+ <para>
+ At this point, cluster 1 means: the character sequence
+ <literal>BCD</literal> is represented by glyphs
+ <literal>BC0,BC1,BC2D0,D1</literal> and cannot be broken down any
+ further.
+ </para>
+</sect1>
+<sect1 id="reordering-in-levels-0-and-1">
+ <title>Reordering in levels 0 and 1</title>
+ <para>
+ Another common operation in the more complex shapers is when things
+ reorder. In those cases, to maintain monotone clusters, HB merges
+ the clusters of everything in the reordering sequence. For example,
+ let's again start with the character sequence:
+ </para>
+ <programlisting>
+ A,B,C,D,E
+ 0,1,2,3,4
+</programlisting>
+ <para>
+ If <literal>D</literal> is reordered before <literal>B</literal>,
+ then the <literal>B</literal>, <literal>C</literal>, and
+ <literal>D</literal> clusters merge, and we get:
+ </para>
+ <programlisting>
+ A,D,B,C,E
+ 0,1,1,1,4
+</programlisting>
+ <para>
+ This is clearly not ideal, but it is the only sensible way to
+ maintain monotone indices and retain the true relationship between
+ glyphs and characters.
+ </para>
+</sect1>
+<sect1 id="the-distinction-between-levels-0-and-1">
+ <title>The distinction between levels 0 and 1</title>
+ <para>
+ So, the above is pretty much what cluster levels 0 and 1 do. The
+ only difference between the two is this: in level 0, at the very
+ beginning of the shaping process, we also merge clusters between
+ base characters and all Unicode marks (combining or not) following
+ them. E.g.:
+ </para>
+ <programlisting>
+ A,acute,B
+ 0,1 ,2
+</programlisting>
+ <para>
+ will become:
+ </para>
+ <programlisting>
+ A,acute,B
+ 0,0 ,2
+</programlisting>
+ <para>
+ This is the default behavior. We do it because Windows did it and
+ old HarfBuzz did it, so this remained the default. But this behavior
+ makes it impossible to color diacritic marks differently from their
+ base characters. That's why in level 1 we do not perform this
+ initial merging step.
+ </para>
+ <para>
+ For clients, level 0 is more convenient if they rely on HarfBuzz
+ clusters for cursor positioning. But that's wrong anyway: cursor
+ positions should be determined based on Unicode grapheme boundaries,
+ NOT shaping clusters. As such, level 1 clusters are preferred.
+ </para>
+ <para>
+ One last note about levels 0 and 1. We currently don't allow a
+ <literal>MultipleSubst</literal> lookup to replace a glyph with zero
+ glyphs (i.e., to delete a glyph). But in some other situations,
+ glyphs can be deleted. In those cases, if the glyph being deleted is
+ the last glyph of its cluster, we make sure to merge the cluster
+ with a neighboring cluster.
+ </para>
+ <para>
+ This is, primarily, to make sure that the starting cluster of the
+ text always has the cluster index pointing to the start of the text
+ for the run; more than one client currently relies on this
+ guarantee.
+ </para>
+ <para>
+ Incidentally, Apple's CoreText does something else to maintain the
+ same promise: it inserts a glyph with id 65535 at the beginning of
+ the glyph string if the glyph corresponding to the first character
+ in the run was deleted. HarfBuzz might do something similar in the
+ future.
+ </para>
+</sect1>
+<sect1 id="level-2">
+ <title>Level 2</title>
+ <para>
+ Level 2 is a different beast from levels 0 and 1. It is simple to
+ describe, but hard to make sense of. It simply doesn't do any
+ cluster merging whatsoever. When things ligate or otherwise multiple
+ glyphs turn into one, the cluster value of the first glyph is
+ retained.
+ </para>
+ <para>
+ Here are a few examples of why processing cluster values produced at
+ this level might be tricky:
+ </para>
+ <sect2 id="ligatures-with-combining-marks">
+ <title>Ligatures with combining marks</title>
+ <para>
+ Imagine capital letters are bases and lower case letters are
+ combining marks. With an input sequence like this:
+ </para>
+ <programlisting>
+ A,a,B,b,C,c
+ 0,1,2,3,4,5
+</programlisting>
+ <para>
+ if <literal>A,B,C</literal> ligate, then here are the cluster
+ values one would get under the various levels:
+ </para>
+ <para>
+ level 0:
+ </para>
+ <programlisting>
+ ABC,a,b,c
+ 0 ,0,0,0
+</programlisting>
+ <para>
+ level 1:
+ </para>
+ <programlisting>
+ ABC,a,b,c
+ 0 ,0,0,5
+</programlisting>
+ <para>
+ level 2:
+ </para>
+ <programlisting>
+ ABC,a,b,c
+ 0 ,1,3,5
+</programlisting>
+ <para>
+ Making sense of the last example is the hardest for a client,
+ because there is nothing in the cluster values to suggest that
+ <literal>B</literal> and <literal>C</literal> ligated with
+ <literal>A</literal>.
+ </para>
+ </sect2>
+ <sect2 id="reordering">
+ <title>Reordering</title>
+ <para>
+ Another tricky case is when things reorder. Under level 2:
+ </para>
+ <programlisting>
+ A,B,C,D,E
+ 0,1,2,3,4
+</programlisting>
+ <para>
+ Now imagine <literal>D</literal> moves before
+ <literal>B</literal>:
+ </para>
+ <programlisting>
+ A,D,B,C,E
+ 0,3,1,2,4
+</programlisting>
+ <para>
+ Now, if <literal>D</literal> ligates with <literal>B</literal>, we
+ get:
+ </para>
+ <programlisting>
+ A,DB,C,E
+ 0,3 ,2,4
+</programlisting>
+ <para>
+ In a different scenario, <literal>A</literal> and
+ <literal>B</literal> could have ligated
+ <emphasis>before</emphasis> <literal>D</literal> reordered; that
+ would have resulted in:
+ </para>
+ <programlisting>
+ AB,D,C,E
+ 0 ,3,2,4
+</programlisting>
+ <para>
+ There's no way to differentitate between these two scenarios based
+ on the cluster numbers alone.
+ </para>
+ <para>
+ Another problem appens with ligatures under level 2 if the
+ direction of the text is forced to opposite of its natural
+ direction (e.g. left-to-right Arabic). But that's too much of a
+ corner case to worry about.
+ </para>
+ </sect2>
+</sect1>
+</chapter>
diff --git a/docs/usermanual-fonts-and-faces.xml b/docs/usermanual-fonts-and-faces.xml
new file mode 100644
index 0000000..01fcdc9
--- /dev/null
+++ b/docs/usermanual-fonts-and-faces.xml
@@ -0,0 +1,18 @@
+<chapter id="fonts-and-faces">
+ <title>Fonts and faces</title>
+ <section id="using-freetype">
+ <title>Using FreeType</title>
+ <para>
+ </para>
+ </section>
+ <section id="using-harfbuzzs-native-opentype-implementation">
+ <title>Using Harfbuzz's native OpenType implementation</title>
+ <para>
+ </para>
+ </section>
+ <section id="using-your-own-font-functions">
+ <title>Using your own font functions</title>
+ <para>
+ </para>
+ </section>
+</chapter> \ No newline at end of file
diff --git a/docs/usermanual-glyph-information.xml b/docs/usermanual-glyph-information.xml
new file mode 100644
index 0000000..ca674c0
--- /dev/null
+++ b/docs/usermanual-glyph-information.xml
@@ -0,0 +1,8 @@
+<sect1 id="glyph-information">
+ <title>Glyph information</title>
+ <sect2 id="names-and-numbers">
+ <title>Names and numbers</title>
+ <para>
+ </para>
+ </sect2>
+</sect1> \ No newline at end of file
diff --git a/docs/usermanual-hello-harfbuzz.xml b/docs/usermanual-hello-harfbuzz.xml
new file mode 100644
index 0000000..34db017
--- /dev/null
+++ b/docs/usermanual-hello-harfbuzz.xml
@@ -0,0 +1,183 @@
+<chapter id="hello-harfbuzz">
+ <title>Hello, Harfbuzz</title>
+ <para>
+ Here's the simplest Harfbuzz that can possibly work. We will improve
+ it later.
+ </para>
+ <orderedlist numeration="arabic">
+ <listitem>
+ <para>
+ Create a buffer and put your text in it.
+ </para>
+ </listitem>
+ </orderedlist>
+ <programlisting language="C">
+ #include &lt;hb.h&gt;
+ hb_buffer_t *buf;
+ buf = hb_buffer_create();
+ hb_buffer_add_utf8(buf, text, strlen(text), 0, strlen(text));
+</programlisting>
+ <orderedlist numeration="arabic">
+ <listitem override="2">
+ <para>
+ Guess the script, language and direction of the buffer.
+ </para>
+ </listitem>
+ </orderedlist>
+ <programlisting language="C">
+ hb_buffer_guess_segment_properties(buf);
+</programlisting>
+ <orderedlist numeration="arabic">
+ <listitem override="3">
+ <para>
+ Create a face and a font, using FreeType for now.
+ </para>
+ </listitem>
+ </orderedlist>
+ <programlisting language="C">
+ #include &lt;hb-ft.h&gt;
+ FT_New_Face(ft_library, font_path, index, &amp;face)
+ hb_font_t *font = hb_ft_font_create(face);
+</programlisting>
+ <orderedlist numeration="arabic">
+ <listitem override="4">
+ <para>
+ Shape!
+ </para>
+ </listitem>
+ </orderedlist>
+ <programlisting>
+ hb_shape(font, buf, NULL, 0);
+</programlisting>
+ <orderedlist numeration="arabic">
+ <listitem override="5">
+ <para>
+ Get the glyph and position information.
+ </para>
+ </listitem>
+ </orderedlist>
+ <programlisting language="C">
+ hb_glyph_info_t *glyph_info = hb_buffer_get_glyph_infos(buf, &amp;glyph_count);
+ hb_glyph_position_t *glyph_pos = hb_buffer_get_glyph_positions(buf, &amp;glyph_count);
+</programlisting>
+ <orderedlist numeration="arabic">
+ <listitem override="6">
+ <para>
+ Iterate over each glyph.
+ </para>
+ </listitem>
+ </orderedlist>
+ <programlisting language="C">
+ for (i = 0; i &lt; glyph_count; ++i) {
+ glyphid = glyph_info[i].codepoint;
+ x_offset = glyph_pos[i].x_offset / 64.0;
+ y_offset = glyph_pos[i].y_offset / 64.0;
+ x_advance = glyph_pos[i].x_advance / 64.0;
+ y_advance = glyph_pos[i].y_advance / 64.0;
+ draw_glyph(glyphid, cursor_x + x_offset, cursor_y + y_offset);
+ cursor_x += x_advance;
+ cursor_y += y_advance;
+ }
+</programlisting>
+ <orderedlist numeration="arabic">
+ <listitem override="7">
+ <para>
+ Tidy up.
+ </para>
+ </listitem>
+ </orderedlist>
+ <programlisting language="C">
+ hb_buffer_destroy(buf);
+ hb_font_destroy(hb_ft_font);
+</programlisting>
+ <section id="what-harfbuzz-doesnt-do">
+ <title>What Harfbuzz doesn't do</title>
+ <para>
+ The code above will take a UTF8 string, shape it, and give you the
+ information required to lay it out correctly on a single
+ horizontal (or vertical) line using the font provided. That is the
+ extent of Harfbuzz's responsibility.
+ </para>
+ <para>
+ If you are implementing a text layout engine you may have other
+ responsibilities, that Harfbuzz will not help you with:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ Harfbuzz won't help you with bidirectionality. If you want to
+ lay out text with mixed Hebrew and English, you will need to
+ ensure that the buffer provided to Harfbuzz has those
+ characters in the correct layout order. This will be different
+ from the logical order in which the Unicode text is stored. In
+ other words, the user will hit the keys in the following
+ sequence:
+ </para>
+ <programlisting>
+A B C [space] ג ב א [space] D E F
+ </programlisting>
+ <para>
+ but will expect to see in the output:
+ </para>
+ <programlisting>
+ABC אבג DEF
+ </programlisting>
+ <para>
+ This reordering is called <emphasis>bidi processing</emphasis>
+ (&quot;bidi&quot; is short for bidirectional), and there's an
+ algorithm as an annex to the Unicode Standard which tells you how
+ to reorder a string from logical order into presentation order.
+ Before sending your string to Harfbuzz, you may need to apply the
+ bidi algorithm to it. Libraries such as ICU and fribidi can do
+ this for you.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Harfbuzz won't help you with text that contains different font
+ properties. For instance, if you have the string &quot;a
+ <emphasis>huge</emphasis> breakfast&quot;, and you expect
+ &quot;huge&quot; to be italic, you will need to send three
+ strings to Harfbuzz: <literal>a</literal>, in your Roman font;
+ <literal>huge</literal> using your italic font; and
+ <literal>breakfast</literal> using your Roman font again.
+ Similarly if you change font, font size, script, language or
+ direction within your string, you will need to shape each run
+ independently and then output them independently. Harfbuzz
+ expects to shape a run of characters sharing the same
+ properties.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Harfbuzz won't help you with line breaking, hyphenation or
+ justification. As mentioned above, it lays out the string
+ along a <emphasis>single line</emphasis> of, notionally,
+ infinite length. If you want to find out where the potential
+ word, sentence and line break points are in your text, you
+ could use the ICU library's break iterator functions.
+ </para>
+ <para>
+ Harfbuzz can tell you how wide a shaped piece of text is, which is
+ useful input to a justification algorithm, but it knows nothing
+ about paragraphs, lines or line lengths. Nor will it adjust the
+ space between words to fit them proportionally into a line. If you
+ want to layout text in paragraphs, you will probably want to send
+ each word of your text to Harfbuzz to determine its shaped width
+ after glyph substitutions, then work out how many words will fit
+ on a line, and then finally output each word of the line separated
+ by a space of the correct size to fully justify the paragraph.
+ </para>
+ </listitem>
+ </itemizedlist>
+ <para>
+ As a layout engine implementor, Harfbuzz will help you with the
+ interface between your text and your font, and that's something
+ that you'll need - what you then do with the glyphs that your font
+ returns is up to you. The example we saw above enough to get us
+ started using Harfbuzz. Now we are going to use the remainder of
+ Harfbuzz's API to refine that example and improve our text shaping
+ capabilities.
+ </para>
+ </section>
+</chapter> \ No newline at end of file
diff --git a/docs/usermanual-install-harfbuzz.xml b/docs/usermanual-install-harfbuzz.xml
new file mode 100644
index 0000000..be8ac8d
--- /dev/null
+++ b/docs/usermanual-install-harfbuzz.xml
@@ -0,0 +1,70 @@
+<chapter id="install-harfbuzz">
+ <title>Install Harfbuzz</title>
+ <section id="download">
+ <title id="download.title">Download</title>
+ <para>
+ For tarball releases of HarfBuzz, look
+ <ulink url="http://www.freedesktop.org/software/harfbuzz/release/">here</ulink>.
+ At the same place you will
+ also find Win32 binary bundles that include libharfbuzz DLL, hb-view.exe,
+ hb-shape.exe, and all dependencies.
+ </para>
+ <para>
+ The canonical source tree is available
+ <ulink url="http://cgit.freedesktop.org/harfbuzz/">here</ulink>.
+ Also available on <ulink url="https://github.com/behdad/harfbuzz">github</ulink>.
+ </para>
+ <para>
+ The API that comes with <filename class='headerfile'>hb.h</filename> will
+ not change incompatibly. Other, peripheral, headers are more likely to go
+ through minor modifications, but again, will do our best to never change
+ API in an incompatible way. We will never break the ABI.
+ </para>
+ <para>
+ If you are not sure whether Pango or HarfBuzz is right for you, read
+ <ulink url="http://mces.blogspot.in/2009/11/pango-vs-harfbuzz.html">this</ulink>.
+ </para>
+ </section>
+ <section id="building">
+ <title>Building</title>
+ <para>
+ On Linux, install the development packages for FreeType, Cairo, and GLib.
+ For example, on Ubuntu / Debian, you would do:
+ <programlisting>
+<command>sudo apt-get install</command> <package>gcc g++ libfreetype6-dev libglib2.0-dev libcairo2-dev</package>
+ </programlisting>
+ whereas on Fedora, RHEL, CentOS, and other Red Hat based systems you would do:
+ <programlisting>
+<command>sudo yum install</command> <package>gcc gcc-c++ freetype-devel glib2-devel cairo-devel</package>
+ </programlisting>
+ or using MacPorts:
+ <programlisting>
+<command>sudo port install</command> <package>freetype glib2 cairo</package>
+ </programlisting>
+ </para>
+ <para>
+ If you are using a tarball, you can now proceed to running
+ <command>configure</command> and <command>make</command> as with any
+ other standard package. That should leave you with a shared library in
+ <filename>src/</filename>, and a few utility programs including hb-view
+ and hb-shape under <filename>util/</filename>.
+ </para>
+ <para>
+ If you are bootstraping from git, you need a few more tools before you
+ can run <filename>autogen.sh</filename> for the first time. Namely,
+ pkg-config and <ulink url="http://www.complang.org/ragel/">ragel</ulink>.
+ Again, on Ubuntu / Debian:
+ <programlisting>
+<command>sudo apt-get install</command> <package>autoconf automake libtool pkg-config ragel gtk-doc-tools</package>
+ </programlisting>
+ and on Fedora, RHEL, CentOS:
+ <programlisting>
+<command>sudo yum install</command> <package>autoconf automake libtool pkgconfig ragel gtk-doc</package>
+ </programlisting>
+ or using MacPorts:
+ <programlisting>
+<command>sudo port install</command> <package>autoconf automake libtool pkgconfig ragel gtk-doc</package>
+ </programlisting>
+ </para>
+ </section>
+</chapter>
diff --git a/docs/usermanual-opentype-features.xml b/docs/usermanual-opentype-features.xml
new file mode 100644
index 0000000..470bab8
--- /dev/null
+++ b/docs/usermanual-opentype-features.xml
@@ -0,0 +1,13 @@
+<chapter id="shaping-and-shape-plans">
+ <title>Shaping and shape plans</title>
+ <section id="opentype-features">
+ <title>OpenType features</title>
+ <para>
+ </para>
+ </section>
+ <section id="plans-and-caching">
+ <title>Plans and caching</title>
+ <para>
+ </para>
+ </section>
+</chapter> \ No newline at end of file
diff --git a/docs/usermanual-what-is-harfbuzz.xml b/docs/usermanual-what-is-harfbuzz.xml
new file mode 100644
index 0000000..3574d75
--- /dev/null
+++ b/docs/usermanual-what-is-harfbuzz.xml
@@ -0,0 +1,115 @@
+<chapter id="what-is-harfbuzz">
+ <title>What is Harfbuzz?</title>
+ <para>
+ Harfbuzz is a <emphasis>text shaping engine</emphasis>. It solves
+ the problem of selecting and positioning glyphs from a font given a
+ Unicode string.
+ </para>
+ <section id="why-do-i-need-it">
+ <title>Why do I need it?</title>
+ <para>
+ Text shaping is an integral part of preparing text for display. It
+ is a fairly low level operation; Harfbuzz is used directly by
+ graphic rendering libraries such as Pango, and the layout engines
+ in Firefox, LibreOffice and Chromium. Unless you are
+ <emphasis>writing</emphasis> one of these layout engines yourself,
+ you will probably not need to use Harfbuzz - normally higher level
+ libraries will turn text into glyphs for you.
+ </para>
+ <para>
+ However, if you <emphasis>are</emphasis> writing a layout engine
+ or graphics library yourself, you will need to perform text
+ shaping, and this is where Harfbuzz can help you. Here are some
+ reasons why you need it:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ OpenType fonts contain a set of glyphs, indexed by glyph ID.
+ The glyph ID within the font does not necessarily relate to a
+ Unicode codepoint. For instance, some fonts have the letter
+ &quot;a&quot; as glyph ID 1. To pull the right glyph out of
+ the font in order to display it, you need to consult a table
+ within the font (the &quot;cmap&quot; table) which maps
+ Unicode codepoints to glyph IDs. Text shaping turns codepoints
+ into glyph IDs.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Many OpenType fonts contain ligatures: combinations of
+ characters which are rendered together. For instance, it's
+ common for the <literal>fi</literal> combination to appear in
+ print as the single ligature &quot;fi&quot;. Whether you should
+ render text as <literal>fi</literal> or &quot;fi&quot; does not
+ depend on the input text, but on the capabilities of the font
+ and the level of ligature application you wish to perform.
+ Text shaping involves querying the font's ligature tables and
+ determining what substitutions should be made.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ While ligatures like &quot;fi&quot; are typographic
+ refinements, some languages <emphasis>require</emphasis> such
+ substitutions to be made in order to display text correctly.
+ In Tamil, when the letter &quot;TTA&quot; (ட) letter is
+ followed by &quot;U&quot; (உ), the combination should appear
+ as the single glyph &quot;டு&quot;. The sequence of Unicode
+ characters &quot;டஉ&quot; needs to be rendered as a single
+ glyph from the font - text shaping chooses the correct glyph
+ from the sequence of characters provided.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Similarly, each Arabic character has four different variants:
+ within a font, there will be glyphs for the initial, medial,
+ final, and isolated forms of each letter. Unicode only encodes
+ one codepoint per character, and so a Unicode string will not
+ tell you which glyph to use. Text shaping chooses the correct
+ form of the letter and returns the correct glyph from the font
+ that you need to render.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Other languages have marks and accents which need to be
+ rendered in certain positions around a base character. For
+ instance, the Moldovan language has the Cyrillic letter
+ &quot;zhe&quot; (ж) with a breve accent, like so: ӂ. Some
+ fonts will contain this character as an individual glyph,
+ whereas other fonts will not contain a zhe-with-breve glyph
+ but expect the rendering engine to form the character by
+ overlaying the two glyphs ж and ˘. Where you should draw the
+ combining breve depends on the height of the preceding glyph.
+ Again, for Arabic, the correct positioning of vowel marks
+ depends on the height of the character on which you are
+ placing the mark. Text shaping tells you whether you have a
+ precomposed glyph within your font or if you need to compose a
+ glyph yourself out of combining marks, and if so, where to
+ position those marks.
+ </para>
+ </listitem>
+ </itemizedlist>
+ <para>
+ If this is something that you need to do, then you need a text
+ shaping engine: you could use Uniscribe if you are using Windows;
+ you could use CoreText on OS X; or you could use Harfbuzz. In the
+ rest of this manual, we are going to assume that you are the
+ implementor of a text layout engine.
+ </para>
+ </section>
+ <section id="why-is-it-called-harfbuzz">
+ <title>Why is it called Harfbuzz?</title>
+ <para>
+ Harfbuzz began its life as text shaping code within the FreeType
+ project, (and you will see references to the FreeType authors
+ within the source code copyright declarations) but was then
+ abstracted out to its own project. This project is maintained by
+ Behdad Esfahbod, and named Harfbuzz. Originally, it was a shaping
+ engine for OpenType fonts - &quot;Harfbuzz&quot; is the Persian
+ for &quot;open type&quot;.
+ </para>
+ </section>
+</chapter> \ No newline at end of file
diff --git a/docs/version.xml b/docs/version.xml
new file mode 100644
index 0000000..c04c650
--- /dev/null
+++ b/docs/version.xml
@@ -0,0 +1 @@
+1.2.7
diff --git a/docs/reference/version.xml.in b/docs/version.xml.in
index de213c2..de213c2 100644
--- a/docs/reference/version.xml.in
+++ b/docs/version.xml.in