+CL-GTK2-GOBJECT is structured as follows:
+@itemize{
+@item{Binding to GObject API, providing low-level means to use functionality of GObject. This includes introspection facilities and means to invoke functionality of GObject.}
+@item{GObject wrapper that bridges Lisp language with GObject API.}
+}
+
+@begin[GObject instrospection API]{section}
+The base of GObject type system is GType. GType is a numerical value that is the unique identifier of a registered type.
+Each GType has a name that is retrieved with @fun{g-type-name}. Conversely, GType can be retrieved from its name via @fun{g-type-from-name}.
+
+There are several predefined GType values that correspond to fundamental or base types.
+@begin{itemize}
+@item{@variable{+g-type-invalid+}}
+@item{@variable{+g-type-void+}}
+@item{@variable{+g-type-interface+}}
+@item{@variable{+g-type-char+}}
+@item{@variable{+g-type-uchar+}}
+@item{@variable{+g-type-boolean+}}
+@item{@variable{+g-type-int+}}
+@item{@variable{+g-type-uint+}}
+@item{@variable{+g-type-long+}}
+@item{@variable{+g-type-ulong+}}
+@item{@variable{+g-type-int64+}}
+@item{@variable{+g-type-uint64+}}
+@item{@variable{+g-type-enum+}}
+@item{@variable{+g-type-flags+}}
+@item{@variable{+g-type-float+}}
+@item{@variable{+g-type-double+}}
+@item{@variable{+g-type-string+}}
+@item{@variable{+g-type-pointer+}}
+@item{@variable{+g-type-boxed+}}
+@item{@variable{+g-type-param+}}
+@item{@variable{+g-type-object+}}
+@end{itemize}
+
+GType values form type hierarchies via signle inheritance. Functions @fun{g-type-parent} and @fun{g-type-children} enable to traverse through the type hierarchy.
+
+For some types, additional information is available. Functions @fun{class-properties} and @fun{interface-properties} return properties of classes and interfaces. Functions @fun{get-enum-items} and @fun{get-flags-items} return members of enum and flags types.