;;;; -*- mode:lisp;coding:utf-8 -*-
;;;;**************************************************************************
;;;;FILE:               clang.lisp
;;;;LANGUAGE:           Common-Lisp
;;;;SYSTEM:             Common-Lisp
;;;;USER-INTERFACE:     NONE
;;;;DESCRIPTION
;;;;
;;;;    Defines a lisp API over clang cindex library.
;;;;    Generated by swig -cffi and then postprocessed.
;;;;
;;;;    DO NOT EDIT!  THE SOURCES ARE:
;;;;    clang.i, lispify-clang, and Makefile.
;;;;
;;;;AUTHORS
;;;;    <PJB> Pascal J. Bourguignon <pjb@informatimago.com>
;;;;MODIFICATIONS
;;;;    2013-01-25 <PJB> Created.
;;;;BUGS
;;;;LEGAL
;;;;    AGPL3
;;;;
;;;;    Copyright Pascal J. Bourguignon 2013 - 2013
;;;;
;;;;    This program is free software: you can redistribute it and/or modify
;;;;    it under the terms of the GNU Affero General Public License as published by
;;;;    the Free Software Foundation, either version 3 of the License, or
;;;;    (at your option) any later version.
;;;;
;;;;    This program is distributed in the hope that it will be useful,
;;;;    but WITHOUT ANY WARRANTY; without even the implied warranty of
;;;;    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;;;    GNU Affero General Public License for more details.
;;;;
;;;;    You should have received a copy of the GNU Affero General Public License
;;;;    along with this program.  If not, see <http://www.gnu.org/licenses/>.
;;;;**************************************************************************


(IN-PACKAGE "COMMON-LISP-USER")
(DEFPACKAGE "COM.OGAMITA.CLANG" (:USE)
 (:EXPORT "BLOCK-COMMAND-COMMENT-GET-ARG-TEXT" "CALLING-CONV" "LOAD-DIAG-ERROR"
  "INCLUSION-VISITOR" "GETTER" "TOGGLE-CRASH-RECOVERY" "DIAGNOSTIC" "BASES"
  "GET-NULL-RANGE" "GET-DIAGNOSTIC-CATEGORY-TEXT" "IDX-IMPORTED-ASTFILE-INFO"
  "GET-CXXACCESS-SPECIFIER" "AVAILABILITY-KIND" "CONSTRUCT-USR-OBJ-CIVAR"
  "GET-COMPLETION-PRIORITY" "SETTER" "DISPOSE-CXPLATFORM-AVAILABILITY"
  "GET-CANONICAL-TYPE" "NAME" "GET-DIAGNOSTIC-OPTION" "CINDEX-VERSION-STRING"
  "COMPILE-COMMAND-GET-DIRECTORY" "IDX-IBOUTLET-COLLECTION-ATTR-INFO"
  "CODE-COMPLETE-AT" "GET-ELEMENT-TYPE" "GET-CURSOR-RESULT-TYPE" "MAJOR"
  "GET-COMPLETION-PARENT" "GET-COMPLETION-AVAILABILITY"
  "CXINDEX-GET-GLOBAL-OPTIONS" "NUM-ATTRIBUTES" "IS-REDECLARATION"
  "GET-TYPE-DECLARATION" "GET-ARRAY-ELEMENT-TYPE" "CURSOR-IS-DYNAMIC-CALL"
  "CODE-COMPLETE-GET-CONTAINER-USR" "FULL-COMMENT-GET-AS-XML"
  "MODULE-GET-TOP-LEVEL-HEADER" "NAME-REF-FLAGS" "PARENT-ENTITY"
  "IS-CONST-QUALIFIED-TYPE" "COMPILE-COMMANDS-GET-SIZE"
  "GET-ENUM-CONSTANT-DECL-UNSIGNED-VALUE" "UNAVAILABLE" "CLIENT-DATA" "LOC"
  "PROTOCOLS" "IS-DECLARATION" "COMPILE-COMMANDS-DISPOSE"
  "GET-TRANSLATION-UNIT-SPELLING" "IS-RESTRICT-QUALIFIED-TYPE" "CREATE-INDEX"
  "GET-CURSOR-PLATFORM-AVAILABILITY" "PARAM-COMMAND-COMMENT-GET-DIRECTION"
  "DECL-INFO" "MODULE-GET-PARENT" "HTMLTAG-COMMENT-GET-AS-STRING"
  "GET-DIAGNOSTIC-IN-SET" "GET-LOCATION-FOR-OFFSET" "GET-SPELLING-LOCATION"
  "CURSOR-GET-OBJ-CSELECTOR-INDEX" "GET-TRANSLATION-UNIT-CURSOR" "IDX-DECL-INFO"
  "IS-STATEMENT" "GET-CURSOR-COMPLETION-STRING" "GET-DIAGNOSTIC-NUM-FIX-ITS"
  "FULL-COMMENT-GET-AS-HTML" "GET-OVERLOADED-DECL" "CURSOR-SET"
  "GET-DIAGNOSTIC-RANGE" "CONSTRUCT-USR-OBJ-CPROTOCOL"
  "CURSOR-GET-TRANSLATION-UNIT" "GET-EXPANSION-LOCATION" "INDEX-OPT-FLAGS"
  "GET-TOKEN-EXTENT" "COMMENT-KIND" "IDX-ENTITY-LANGUAGE" "INDEX-ACTION-DISPOSE"
  "GET-NUM-DIAGNOSTICS-IN-SET" "GET-DIAGNOSTIC"
  "CODE-COMPLETE-GET-OBJ-CSELECTOR" "IS-UNEXPOSED"
  "INDEX-GET-OBJ-CCATEGORY-DECL-INFO" "GET-CURSOR-LANGUAGE" "CLASS-LOC"
  "COMMENT-GET-NUM-CHILDREN" "OBJC-CLASS" "COMPILATION-DATABASE-ERROR"
  "SORT-CODE-COMPLETION-RESULTS" "IDX-CLIENT-ASTFILE"
  "GET-DIAGNOSTIC-CATEGORY-NAME" "GET-CURSOR-DEFINITION"
  "GET-NUM-COMPLETION-CHUNKS" "DEPRECATED" "COMPLETION-CONTEXT"
  "REMAP-GET-FILENAMES" "IDX-OBJ-CCONTAINER-DECL-INFO"
  "INDEX-GET-OBJ-CCONTAINER-DECL-INFO" "TYPE" "GET-TYPE-KIND-SPELLING"
  "DISPOSE-CODE-COMPLETE-RESULTS" "GET-CURSOR-REFERENCED"
  "GET-DIAGNOSTIC-CATEGORY" "CONSTRUCT-USR-OBJ-CCATEGORY" "LEXICAL-CONTAINER"
  "INDEX-LOC-GET-FILE-LOCATION" "MODULE" "GET-FILE"
  "COMPILATION-DATABASE-GET-COMPILE-COMMANDS" "TURESOURCE-USAGE-ENTRY"
  "INDEX-SOURCE-FILE" "IDX-OBJ-CPROTOCOL-REF-INFO" "ABORT-QUERY"
  "CURSOR-IS-NULL" "ENTERED-MAIN-FILE" "NUM-PROTOCOLS"
  "INDEX-GET-OBJ-CINTERFACE-DECL-INFO" "REPARSE-TRANSLATION-UNIT"
  "PARSE-TRANSLATION-UNIT" "COMPILE-COMMAND-GET-NUM-ARGS"
  "VERBATIM-BLOCK-LINE-COMMENT-GET-TEXT" "CONTENTS" "DISPOSE-DIAGNOSTIC-SET"
  "CXXMETHOD-IS-STATIC" "INLINE-COMMAND-COMMENT-GET-ARG-TEXT"
  "CURSOR-GET-SPELLING-NAME-RANGE" "GET-TOKEN-SPELLING" "GET-POINTEE-TYPE"
  "COMPLETION-CHUNK-KIND" "IS-PREPROCESSING" "GET-REMAPPINGS" "LANG"
  "CONTAINER-INFO" "GET-NUM-OVERLOADED-DECLS" "-CXXACCESS-SPECIFIER" "ATTR-INFO"
  "OBSOLETED" "BLOCK-COMMAND-COMMENT-GET-NUM-ARGS"
  "INLINE-COMMAND-COMMENT-GET-NUM-ARGS" "IS-ATTRIBUTE"
  "CODE-COMPLETE-GET-CONTAINER-KIND" "EQUAL-TYPES" "GET-RESULT-TYPE" "CONTEXT"
  "INDEXER-CALLBACKS" "MINOR" "PP-INCLUDED-FILE" "GET-CURSOR-TYPE" "HASH-LOC"
  "IDX-ENTITY-CXXTEMPLATE-KIND" "IDX-OBJ-CPROPERTY-DECL-INFO" "GET-LOCATION"
  "CONSTRUCT-USR-OBJ-CPROPERTY" "LOAD-DIAGNOSTICS" "FORMAT-DIAGNOSTIC"
  "SAVE-TRANSLATION-UNIT" "DIAGNOSTIC-SEVERITY" "SAVE-ERROR" "IS-VIRTUAL-BASE"
  "CODE-COMPLETE-RESULTS" "IDX-ENTITY-REF-INFO" "RANGE-IS-NULL" "GET-ARG-TYPE"
  "BASE" "INDEX" "TEXT-COMMENT-GET-TEXT" "HTMLSTART-TAG-GET-NUM-ATTRS"
  "GET-COMPLETION-NUM-ANNOTATIONS" "GET-DIAGNOSTIC-SEVERITY"
  "SEMANTIC-CONTAINER" "DEFAULT-CODE-COMPLETE-OPTIONS" "IS-DEFINITION"
  "ENABLE-STACK-TRACES" "INDEX-GET-CLIENT-CONTAINER" "IS-IMPORT"
  "IDX-OBJ-CPROTOCOL-REF-LIST-INFO" "INDEX-GET-OBJ-CPROTOCOL-REF-LIST-INFO"
  "CURSOR-GET-BRIEF-COMMENT-TEXT" "EQUAL-LOCATIONS" "IS-EXPRESSION" "PTR-DATA"
  "ANNOTATE-TOKENS" "CURSOR-VISITOR" "DEFAULT-EDITING-TRANSLATION-UNIT-OPTIONS"
  "EQUAL-RANGES" "ATTRIBUTES" "GET-TOKEN-KIND"
  "GET-TYPEDEF-DECL-UNDERLYING-TYPE" "KIND" "IDX-BASE-CLASS-INFO" "GET-RANGE"
  "INTRODUCED" "MESSAGE" "GET-DIAGNOSTIC-SET-FROM-TU"
  "GET-ENUM-DECL-INTEGER-TYPE" "COMMENT-PARAM-PASS-DIRECTION" "TYPE-KIND" "DATA"
  "HTMLSTART-TAG-GET-ATTR-VALUE" "GET-RANGE-START" "GET-FILE-NAME"
  "GET-SPECIALIZED-CURSOR-TEMPLATE" "GET-CURSOR-EXTENT"
  "GET-CURSOR-DISPLAY-NAME" "GET-DIAGNOSTIC-SPELLING"
  "GET-COMPLETION-CHUNK-TEXT" "REMAP-GET-NUM-FILES" "VERSION" "GET-RANGE-END"
  "NUM-ENTRIES" "LANGUAGE-KIND" "SUBMINOR" "VISITOR-RESULT" "AMOUNT"
  "GET-NUM-ARG-TYPES" "CINDEX-VERSION" "IS-PODTYPE" "GET-CURSOR-SEMANTIC-PARENT"
  "DISPOSE-INDEX" "DIAGNOSTIC-DISPLAY-OPTIONS" "DISPOSE-DIAGNOSTIC"
  "HTMLSTART-TAG-GET-ATTR-NAME" "IDX-LOC" "CHILD-VISIT-RESULT"
  "COMPILATION-DATABASE-DISPOSE" "CLANG-TOKENIZE" "GET-INCLUSIONS" "CONTAINER"
  "HTMLSTART-TAG-COMMENT-IS-SELF-CLOSING" "GET-DEFINITION-SPELLING-AND-EXTENT"
  "GET-ENUM-CONSTANT-DECL-VALUE" "IS-CURSOR-DEFINITION" "IS-REFERENCE"
  "INDEX-ACTION-CREATE" "PARAM-COMMAND-COMMENT-IS-PARAM-INDEX-VALID"
  "GET-TOKEN-LOCATION" "CURSOR-GET-PARSED-COMMENT"
  "PARAM-COMMAND-COMMENT-GET-PARAM-NAME" "COMPILATION-DATABASE"
  "GET-CANONICAL-CURSOR" "COMPLETION-STRING" "LINKAGE-KIND"
  "CURSOR-GET-NUM-ARGUMENTS" "IDX-OBJ-CINTERFACE-DECL-INFO"
  "DEFAULT-REPARSE-OPTIONS" "GET-COMPLETION-ANNOTATION" "COMMENT-GET-KIND"
  "REMAPPING" "IDX-OBJ-CCONTAINER-KIND" "IDX-ENTITY-KIND"
  "GET-CURSOR-KIND-SPELLING" "INLINE-CONTENT-COMMENT-HAS-TRAILING-NEWLINE"
  "DISPOSE-CXCURSOR-SET" "GET-DIAGNOSTIC-NUM-RANGES" "GET-CURSOR"
  "COMPLETION-RESULT" "TOKEN" "TPARAM-COMMAND-COMMENT-GET-PARAM-NAME"
  "PARAM-COMMAND-COMMENT-GET-PARAM-INDEX" "SUPER-INFO"
  "SAVE-TRANSLATION-UNIT-FLAGS" "VERBATIM-LINE-COMMENT-GET-TEXT"
  "GET-ARRAY-SIZE" "IS-IMPLICIT" "COMPILE-COMMANDS" "IS-TRANSLATION-UNIT"
  "CLANG-REMAP-DISPOSE" "CODE-COMPLETE-GET-CONTEXTS" "ENTRIES"
  "CXINDEX-SET-GLOBAL-OPTIONS" "INLINE-COMMAND-COMMENT-GET-RENDER-KIND"
  "REFERENCED-ENTITY" "GET-CHILD-DIAGNOSTICS" "COMPILE-COMMANDS-GET-COMMAND"
  "PLATFORM-AVAILABILITY" "INDEX-DECLARATION" "GET-CURSOR-REFERENCE-NAME-RANGE"
  "IDX-CXXCLASS-DECL-INFO" "IMPORTED-ASTFILE" "GET-INSTANTIATION-LOCATION"
  "GET-NULL-CURSOR" "DISPOSE-TRANSLATION-UNIT" "COMMENT" "XDATA"
  "GET-INCLUDED-FILE" "IDX-CLIENT-CONTAINER" "ENTITY-INFO"
  "GET-PRESUMED-LOCATION" "CONSTRUCT-USR-OBJ-CMETHOD" "IDX-CLIENT-ENTITY"
  "IDX-ATTR-INFO" "DECL-AS-CONTAINER" "COMPILE-COMMAND-GET-ARG" "TOKEN-KIND"
  "TPARAM-COMMAND-COMMENT-GET-DEPTH" "CXXMETHOD-IS-VIRTUAL"
  "GET-REMAPPINGS-FROM-FILE-LIST" "FIND-REFERENCES-IN-FILE"
  "COMMENT-IS-WHITESPACE" "GET-CXTURESOURCE-USAGE" "IDX-INCLUDED-FILE-INFO"
  "TPARAM-COMMAND-COMMENT-IS-PARAM-POSITION-VALID" "IS-ANGLED" "END-INT-DATA"
  "INT-DATA" "IS-FUNCTION-TYPE-VARIADIC" "VISIT" "GET-IBOUTLET-COLLECTION-TYPE"
  "COMMENT-GET-CHILD" "GET-CURSOR-AVAILABILITY" "ASTNODE" "SOURCE-RANGE"
  "GET-COMPLETION-BRIEF-COMMENT" "GET-OVERRIDDEN-CURSORS" "BEGIN-INT-DATA"
  "NUM-BASES" "CONSTRUCT-USR-OBJ-CCLASS"
  "BLOCK-COMMAND-COMMENT-GET-COMMAND-NAME"
  "INLINE-COMMAND-COMMENT-GET-COMMAND-NAME" "GET-DIAGNOSTIC-FIX-IT"
  "GET-CLANG-VERSION" "TURESOURCE-USAGE-KIND" "DISPOSE-CXTURESOURCE-USAGE"
  "INDEX-GET-IBOUTLET-COLLECTION-ATTR-INFO" "CINDEX-VERSION-MAJOR"
  "MODULE-GET-NAME" "GLOBAL-OPT-FLAGS" "GET-CURSOR-SPELLING" "UNSAVED-FILE"
  "INDEX-ENTITY-REFERENCE" "CURSOR-AND-RANGE-VISITOR"
  "GET-COMPLETION-CHUNK-KIND" "VISIT-CHILDREN" "IDX-ENTITY-REF-KIND"
  "COMPILE-COMMAND" "FILENAME" "GET-FILE-TIME" "REPARSE-FLAGS" "PLATFORM"
  "PROTOCOL" "DISPOSE-OVERRIDDEN-CURSORS" "USR" "GET-NUM-ELEMENTS"
  "DISPOSE-TOKENS" "INDEX-SET-CLIENT-ENTITY" "INDEX-ACTION" "SOURCE-LOCATION"
  "MODULE-GET-FULL-NAME" "GET-CURSOR-KIND" "DEFAULT-DIAGNOSTIC-DISPLAY-OPTIONS"
  "CODE-COMPLETE-GET-NUM-DIAGNOSTICS" "GET-NUM-DIAGNOSTICS"
  "CURSOR-GET-RECEIVER-TYPE" "TURESOURCE-USAGE" "HTMLTAG-COMMENT-GET-TAG-NAME"
  "COMPILATION-DATABASE-FROM-DIRECTORY" "CINDEX-VERSION-MINOR" "IS-INVALID"
  "CURSOR-GET-RAW-COMMENT-TEXT" "CURSOR-GET-COMMENT-RANGE" "CURSOR-GET-MODULE"
  "IDX-CLIENT-FILE" "DEFAULT-SAVE-OPTIONS" "EXECUTE-ON-THREAD"
  "GET-CURSOR-LOCATION" "INDEX-GET-OBJ-CPROPERTY-DECL-INFO"
  "INDEX-GET-CLIENT-ENTITY" "INDEX-LOC-GET-CXSOURCE-LOCATION"
  "GET-CURSOR-LINKAGE" "INDEX-SET-CLIENT-CONTAINER" "RESULTS" "EQUAL-CURSORS"
  "DIAGNOSTIC-SET" "TRANSLATION-UNIT" "GET-DIAGNOSTIC-LOCATION" "NUM-RESULTS"
  "GET-FUNCTION-TYPE-CALLING-CONV" "COMMENT-INLINE-COMMAND-RENDER-KIND"
  "GET-CURSOR-LEXICAL-PARENT" "INDEX-IS-ENTITY-OBJ-CCONTAINER-KIND"
  "HASH-CURSOR" "CXCURSOR-SET-CONTAINS" "GET-NULL-LOCATION" "GET-CURSOR-USR"
  "IS-VOLATILE-QUALIFIED-TYPE" "CXCURSOR-SET-INSERT"
  "INDEX-GET-CXXCLASS-DECL-INFO" "FILE"
  "CREATE-TRANSLATION-UNIT-FROM-SOURCE-FILE" "IS-FILE-MULTIPLE-INCLUDE-GUARDED"
  "IS-MODULE-IMPORT" "GET-TURESOURCE-USAGE-NAME"
  "BLOCK-COMMAND-COMMENT-GET-PARAGRAPH" "CLASS-CURSOR"
  "GET-COMPLETION-CHUNK-COMPLETION-STRING" "CURSOR-KIND"
  "INDEX-TRANSLATION-UNIT" "LENGTH" "IDX-ENTITY-INFO" "TEMPLATE-KIND"
  "TPARAM-COMMAND-COMMENT-GET-INDEX" "CODE-COMPLETE-FLAGS" "CURSOR"
  "IDX-OBJ-CCATEGORY-DECL-INFO" "GET-TEMPLATE-CURSOR-KIND"
  "MODULE-GET-NUM-TOP-LEVEL-HEADERS" "CREATE-CXCURSOR-SET"
  "CREATE-TRANSLATION-UNIT" "PARAM-COMMAND-COMMENT-IS-DIRECTION-EXPLICIT"
  "IDX-ATTR-KIND" "CURSOR-GET-ARGUMENT" "STARTED-TRANSLATION-UNIT"
  "CODE-COMPLETE-GET-DIAGNOSTIC" "TRANSLATION-UNIT-FLAGS"
  "GET-DECL-OBJ-CTYPE-ENCODING" "IDX-CONTAINER-INFO" "IS-CONTAINER"))
;;; This file was automatically generated by SWIG (http://www.swig.org).
;;; Version 2.0.10
;;;
;;; Do not make changes to this file unless you know what you are doing--modify
;;; the SWIG interface file instead.

(DEFMACRO DEFANONENUM (&BODY ENUMS) "Converts anonymous enums to defconstants."
 `(PROGN
   ,@(LOOP FOR VALUE IN ENUMS FOR INDEX = 0 THEN (1+ INDEX) WHEN (LISTP VALUE)
      DO (SETF INDEX (SECOND VALUE) VALUE (FIRST VALUE)) COLLECT
      `(DEFCONSTANT ,VALUE ,INDEX))))
(EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL)
 (UNLESS (FBOUNDP 'SWIG-LISPIFY)
  (DEFUN SWIG-LISPIFY
   (COM.OGAMITA.CLANG:NAME FLAG &OPTIONAL (PACKAGE *PACKAGE*))
   (LABELS
    ((HELPER (LST LAST REST &AUX (C (CAR LST)))
      (COND ((NULL LST) REST)
       ((UPPER-CASE-P C)
        (HELPER (CDR LST) 'UPPER
         (CASE LAST ((LOWER DIGIT) (LIST* C #\- REST)) (T (CONS C REST)))))
       ((LOWER-CASE-P C) (HELPER (CDR LST) 'LOWER (CONS (CHAR-UPCASE C) REST)))
       ((DIGIT-CHAR-P C)
        (HELPER (CDR LST) 'DIGIT
         (CASE LAST ((UPPER LOWER) (LIST* C #\- REST)) (T (CONS C REST)))))
       ((CHAR-EQUAL C #\_) (HELPER (CDR LST) '_ (CONS #\- REST)))
       (T (ERROR "Invalid character: ~A" C)))))
    (LET ((FIX (CASE FLAG ((CONSTANT ENUMVALUE) "+") (VARIABLE "*") (T ""))))
     (INTERN
      (CONCATENATE 'STRING FIX
       (NREVERSE (HELPER (CONCATENATE 'LIST COM.OGAMITA.CLANG:NAME) NIL NIL))
       FIX)
      PACKAGE))))))
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:COMPILATION-DATABASE :POINTER)
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:COMPILE-COMMANDS :POINTER)
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:COMPILE-COMMAND :POINTER)
(CFFI:DEFCENUM COM.OGAMITA.CLANG:COMPILATION-DATABASE-ERROR
 (:COMPILATION-DATABASE-NO-ERROR 0)
 (:COMPILATION-DATABASE-CAN-NOT-LOAD-DATABASE 1))
(CFFI:DEFCFUN
 ("clang_CompilationDatabase_fromDirectory"
  COM.OGAMITA.CLANG:COMPILATION-DATABASE-FROM-DIRECTORY)
 :POINTER (|BuildDir| :STRING) (|ErrorCode| :POINTER))
(CFFI:DEFCFUN
 ("clang_CompilationDatabase_dispose"
  COM.OGAMITA.CLANG:COMPILATION-DATABASE-DISPOSE)
 :VOID (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_CompilationDatabase_getCompileCommands"
  COM.OGAMITA.CLANG:COMPILATION-DATABASE-GET-COMPILE-COMMANDS)
 :POINTER (ARG0 :POINTER) (|CompleteFileName| :STRING))
(CFFI:DEFCFUN
 ("clang_CompileCommands_dispose" COM.OGAMITA.CLANG:COMPILE-COMMANDS-DISPOSE)
 :VOID (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_CompileCommands_getSize" COM.OGAMITA.CLANG:COMPILE-COMMANDS-GET-SIZE)
 :UNSIGNED-INT (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_CompileCommands_getCommand"
  COM.OGAMITA.CLANG:COMPILE-COMMANDS-GET-COMMAND)
 :POINTER (ARG0 :POINTER) (|i| :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_CompileCommand_getDirectory"
  COM.OGAMITA.CLANG:COMPILE-COMMAND-GET-DIRECTORY)
 :POINTER (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_CompileCommand_getNumArgs"
  COM.OGAMITA.CLANG:COMPILE-COMMAND-GET-NUM-ARGS)
 :UNSIGNED-INT (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_CompileCommand_getArg" COM.OGAMITA.CLANG:COMPILE-COMMAND-GET-ARG)
 :POINTER (ARG0 :POINTER) (|i| :UNSIGNED-INT))
(DEFCONSTANT COM.OGAMITA.CLANG:CINDEX-VERSION-MAJOR 0)
(DEFCONSTANT COM.OGAMITA.CLANG:CINDEX-VERSION-MINOR 6)
(DEFCONSTANT COM.OGAMITA.CLANG:CINDEX-VERSION
 (+ (* COM.OGAMITA.CLANG:CINDEX-VERSION-MAJOR 10000)
  (* COM.OGAMITA.CLANG:CINDEX-VERSION-MINOR 1)))
(DEFCONSTANT COM.OGAMITA.CLANG:CINDEX-VERSION-STRING "0.6")
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:INDEX :POINTER)
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:TRANSLATION-UNIT :POINTER)
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:CLIENT-DATA :POINTER)
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:UNSAVED-FILE
 (COM.OGAMITA.CLANG:FILENAME :STRING) (COM.OGAMITA.CLANG:CONTENTS :STRING)
 (COM.OGAMITA.CLANG:LENGTH :UNSIGNED-LONG))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:AVAILABILITY-KIND :AVAILABILITY-AVAILABLE
 :AVAILABILITY-DEPRECATED :AVAILABILITY-NOT-AVAILABLE
 :AVAILABILITY-NOT-ACCESSIBLE)
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:VERSION (COM.OGAMITA.CLANG:MAJOR :INT)
 (COM.OGAMITA.CLANG:MINOR :INT) (COM.OGAMITA.CLANG:SUBMINOR :INT))
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:VERSION COM.OGAMITA.CLANG:VERSION)
(CFFI:DEFCFUN ("clang_createIndex" COM.OGAMITA.CLANG:CREATE-INDEX) :POINTER
 (|excludeDeclarationsFromPCH| :INT) (|displayDiagnostics| :INT))
(CFFI:DEFCFUN ("clang_disposeIndex" COM.OGAMITA.CLANG:DISPOSE-INDEX) :VOID
 (INDEX :POINTER))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:GLOBAL-OPT-FLAGS (:GLOBAL-OPT-NONE 0)
 (:GLOBAL-OPT-THREAD-BACKGROUND-PRIORITY-FOR-INDEXING 1)
 (:GLOBAL-OPT-THREAD-BACKGROUND-PRIORITY-FOR-EDITING 2)
 (:GLOBAL-OPT-THREAD-BACKGROUND-PRIORITY-FOR-ALL 3))
(CFFI:DEFCFUN
 ("clang_CXIndex_setGlobalOptions" COM.OGAMITA.CLANG:CXINDEX-SET-GLOBAL-OPTIONS)
 :VOID (ARG0 :POINTER) (OPTIONS :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_CXIndex_getGlobalOptions" COM.OGAMITA.CLANG:CXINDEX-GET-GLOBAL-OPTIONS)
 :UNSIGNED-INT (ARG0 :POINTER))
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:FILE :POINTER)
(CFFI:DEFCFUN ("clang_getFileName" COM.OGAMITA.CLANG:GET-FILE-NAME) :POINTER
 (|SFile| :POINTER))
(CFFI:DEFCFUN ("clang_getFileTime" COM.OGAMITA.CLANG:GET-FILE-TIME) :POINTER
 (|SFile| :POINTER))
(CFFI:DEFCFUN
 ("clang_isFileMultipleIncludeGuarded"
  COM.OGAMITA.CLANG:IS-FILE-MULTIPLE-INCLUDE-GUARDED)
 :UNSIGNED-INT (TU :POINTER) (FILE :POINTER))
(CFFI:DEFCFUN ("clang_getFile" COM.OGAMITA.CLANG:GET-FILE) :POINTER
 (TU :POINTER) (FILE_NAME :STRING))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:SOURCE-LOCATION
 (COM.OGAMITA.CLANG:PTR-DATA :POINTER)
 (COM.OGAMITA.CLANG:INT-DATA :UNSIGNED-INT))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:SOURCE-RANGE
 (COM.OGAMITA.CLANG:PTR-DATA :POINTER)
 (COM.OGAMITA.CLANG:BEGIN-INT-DATA :UNSIGNED-INT)
 (COM.OGAMITA.CLANG:END-INT-DATA :UNSIGNED-INT))
(CFFI:DEFCFUN ("clang_getNullLocation" COM.OGAMITA.CLANG:GET-NULL-LOCATION)
 COM.OGAMITA.CLANG:SOURCE-LOCATION)
(CFFI:DEFCFUN ("clang_equalLocations" COM.OGAMITA.CLANG:EQUAL-LOCATIONS)
 :UNSIGNED-INT (LOC1 COM.OGAMITA.CLANG:SOURCE-LOCATION)
 (LOC2 COM.OGAMITA.CLANG:SOURCE-LOCATION))
(CFFI:DEFCFUN ("clang_getLocation" COM.OGAMITA.CLANG:GET-LOCATION)
 COM.OGAMITA.CLANG:SOURCE-LOCATION (TU :POINTER) (FILE :POINTER)
 (LINE :UNSIGNED-INT) (COLUMN :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_getLocationForOffset" COM.OGAMITA.CLANG:GET-LOCATION-FOR-OFFSET)
 COM.OGAMITA.CLANG:SOURCE-LOCATION (TU :POINTER) (FILE :POINTER)
 (OFFSET :UNSIGNED-INT))
(CFFI:DEFCFUN ("clang_getNullRange" COM.OGAMITA.CLANG:GET-NULL-RANGE)
 COM.OGAMITA.CLANG:SOURCE-RANGE)
(CFFI:DEFCFUN ("clang_getRange" COM.OGAMITA.CLANG:GET-RANGE)
 COM.OGAMITA.CLANG:SOURCE-RANGE (BEGIN COM.OGAMITA.CLANG:SOURCE-LOCATION)
 (END COM.OGAMITA.CLANG:SOURCE-LOCATION))
(CFFI:DEFCFUN ("clang_equalRanges" COM.OGAMITA.CLANG:EQUAL-RANGES) :UNSIGNED-INT
 (RANGE1 COM.OGAMITA.CLANG:SOURCE-RANGE)
 (RANGE2 COM.OGAMITA.CLANG:SOURCE-RANGE))
(CFFI:DEFCFUN ("clang_Range_isNull" COM.OGAMITA.CLANG:RANGE-IS-NULL) :INT
 (RANGE COM.OGAMITA.CLANG:SOURCE-RANGE))
(CFFI:DEFCFUN
 ("clang_getExpansionLocation" COM.OGAMITA.CLANG:GET-EXPANSION-LOCATION) :VOID
 (LOCATION COM.OGAMITA.CLANG:SOURCE-LOCATION) (FILE :POINTER) (LINE :POINTER)
 (COLUMN :POINTER) (OFFSET :POINTER))
(CFFI:DEFCFUN
 ("clang_getPresumedLocation" COM.OGAMITA.CLANG:GET-PRESUMED-LOCATION) :VOID
 (LOCATION COM.OGAMITA.CLANG:SOURCE-LOCATION) (FILENAME :POINTER)
 (LINE :POINTER) (COLUMN :POINTER))
(CFFI:DEFCFUN
 ("clang_getInstantiationLocation" COM.OGAMITA.CLANG:GET-INSTANTIATION-LOCATION)
 :VOID (LOCATION COM.OGAMITA.CLANG:SOURCE-LOCATION) (FILE :POINTER)
 (LINE :POINTER) (COLUMN :POINTER) (OFFSET :POINTER))
(CFFI:DEFCFUN
 ("clang_getSpellingLocation" COM.OGAMITA.CLANG:GET-SPELLING-LOCATION) :VOID
 (LOCATION COM.OGAMITA.CLANG:SOURCE-LOCATION) (FILE :POINTER) (LINE :POINTER)
 (COLUMN :POINTER) (OFFSET :POINTER))
(CFFI:DEFCFUN ("clang_getRangeStart" COM.OGAMITA.CLANG:GET-RANGE-START)
 COM.OGAMITA.CLANG:SOURCE-LOCATION (RANGE COM.OGAMITA.CLANG:SOURCE-RANGE))
(CFFI:DEFCFUN ("clang_getRangeEnd" COM.OGAMITA.CLANG:GET-RANGE-END)
 COM.OGAMITA.CLANG:SOURCE-LOCATION (RANGE COM.OGAMITA.CLANG:SOURCE-RANGE))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:DIAGNOSTIC-SEVERITY (:DIAGNOSTIC-IGNORED 0)
 (:DIAGNOSTIC-NOTE 1) (:DIAGNOSTIC-WARNING 2) (:DIAGNOSTIC-ERROR 3)
 (:DIAGNOSTIC-FATAL 4))
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:DIAGNOSTIC :POINTER)
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:DIAGNOSTIC-SET :POINTER)
(CFFI:DEFCFUN
 ("clang_getNumDiagnosticsInSet" COM.OGAMITA.CLANG:GET-NUM-DIAGNOSTICS-IN-SET)
 :UNSIGNED-INT (|Diags| :POINTER))
(CFFI:DEFCFUN
 ("clang_getDiagnosticInSet" COM.OGAMITA.CLANG:GET-DIAGNOSTIC-IN-SET) :POINTER
 (|Diags| :POINTER) (|Index| :UNSIGNED-INT))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:LOAD-DIAG-ERROR (:LOAD-DIAG-NONE 0)
 (:LOAD-DIAG-UNKNOWN 1) (:LOAD-DIAG-CANNOT-LOAD 2) (:LOAD-DIAG-INVALID-FILE 3))
(CFFI:DEFCFUN ("clang_loadDiagnostics" COM.OGAMITA.CLANG:LOAD-DIAGNOSTICS)
 :POINTER (FILE :STRING) (ERROR :POINTER) (|errorString| :POINTER))
(CFFI:DEFCFUN
 ("clang_disposeDiagnosticSet" COM.OGAMITA.CLANG:DISPOSE-DIAGNOSTIC-SET) :VOID
 (|Diags| :POINTER))
(CFFI:DEFCFUN
 ("clang_getChildDiagnostics" COM.OGAMITA.CLANG:GET-CHILD-DIAGNOSTICS) :POINTER
 (|d| :POINTER))
(CFFI:DEFCFUN ("clang_getNumDiagnostics" COM.OGAMITA.CLANG:GET-NUM-DIAGNOSTICS)
 :UNSIGNED-INT (|Unit| :POINTER))
(CFFI:DEFCFUN ("clang_getDiagnostic" COM.OGAMITA.CLANG:GET-DIAGNOSTIC) :POINTER
 (|Unit| :POINTER) (|Index| :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_getDiagnosticSetFromTU" COM.OGAMITA.CLANG:GET-DIAGNOSTIC-SET-FROM-TU)
 :POINTER (|Unit| :POINTER))
(CFFI:DEFCFUN ("clang_disposeDiagnostic" COM.OGAMITA.CLANG:DISPOSE-DIAGNOSTIC)
 :VOID (|Diagnostic| :POINTER))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:DIAGNOSTIC-DISPLAY-OPTIONS
 (:DIAGNOSTIC-DISPLAY-SOURCE-LOCATION 1) (:DIAGNOSTIC-DISPLAY-COLUMN 2)
 (:DIAGNOSTIC-DISPLAY-SOURCE-RANGES 4) (:DIAGNOSTIC-DISPLAY-OPTION 8)
 (:DIAGNOSTIC-DISPLAY-CATEGORY-ID 16) (:DIAGNOSTIC-DISPLAY-CATEGORY-NAME 32))
(CFFI:DEFCFUN ("clang_formatDiagnostic" COM.OGAMITA.CLANG:FORMAT-DIAGNOSTIC)
 :POINTER (|Diagnostic| :POINTER) (|Options| :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_defaultDiagnosticDisplayOptions"
  COM.OGAMITA.CLANG:DEFAULT-DIAGNOSTIC-DISPLAY-OPTIONS)
 :UNSIGNED-INT)
(CFFI:DEFCFUN
 ("clang_getDiagnosticSeverity" COM.OGAMITA.CLANG:GET-DIAGNOSTIC-SEVERITY)
 COM.OGAMITA.CLANG:DIAGNOSTIC-SEVERITY (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_getDiagnosticLocation" COM.OGAMITA.CLANG:GET-DIAGNOSTIC-LOCATION)
 COM.OGAMITA.CLANG:SOURCE-LOCATION (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_getDiagnosticSpelling" COM.OGAMITA.CLANG:GET-DIAGNOSTIC-SPELLING)
 :POINTER (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_getDiagnosticOption" COM.OGAMITA.CLANG:GET-DIAGNOSTIC-OPTION) :POINTER
 (|Diag| :POINTER) (|Disable| :POINTER))
(CFFI:DEFCFUN
 ("clang_getDiagnosticCategory" COM.OGAMITA.CLANG:GET-DIAGNOSTIC-CATEGORY)
 :UNSIGNED-INT (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_getDiagnosticCategoryName"
  COM.OGAMITA.CLANG:GET-DIAGNOSTIC-CATEGORY-NAME)
 :POINTER (|Category| :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_getDiagnosticCategoryText"
  COM.OGAMITA.CLANG:GET-DIAGNOSTIC-CATEGORY-TEXT)
 :POINTER (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_getDiagnosticNumRanges" COM.OGAMITA.CLANG:GET-DIAGNOSTIC-NUM-RANGES)
 :UNSIGNED-INT (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_getDiagnosticRange" COM.OGAMITA.CLANG:GET-DIAGNOSTIC-RANGE)
 COM.OGAMITA.CLANG:SOURCE-RANGE (|Diagnostic| :POINTER) (|Range| :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_getDiagnosticNumFixIts" COM.OGAMITA.CLANG:GET-DIAGNOSTIC-NUM-FIX-ITS)
 :UNSIGNED-INT (|Diagnostic| :POINTER))
(CFFI:DEFCFUN
 ("clang_getDiagnosticFixIt" COM.OGAMITA.CLANG:GET-DIAGNOSTIC-FIX-IT) :POINTER
 (|Diagnostic| :POINTER) (|FixIt| :UNSIGNED-INT) (|ReplacementRange| :POINTER))
(CFFI:DEFCFUN
 ("clang_getTranslationUnitSpelling"
  COM.OGAMITA.CLANG:GET-TRANSLATION-UNIT-SPELLING)
 :POINTER (|CTUnit| :POINTER))
(CFFI:DEFCFUN
 ("clang_createTranslationUnitFromSourceFile"
  COM.OGAMITA.CLANG:CREATE-TRANSLATION-UNIT-FROM-SOURCE-FILE)
 :POINTER (|CIdx| :POINTER) (SOURCE_FILENAME :STRING)
 (NUM_CLANG_COMMAND_LINE_ARGS :INT) (CLANG_COMMAND_LINE_ARGS :POINTER)
 (NUM_UNSAVED_FILES :UNSIGNED-INT) (UNSAVED_FILES :POINTER))
(CFFI:DEFCFUN
 ("clang_createTranslationUnit" COM.OGAMITA.CLANG:CREATE-TRANSLATION-UNIT)
 :POINTER (ARG0 :POINTER) (AST_FILENAME :STRING))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:TRANSLATION-UNIT-FLAGS
 (:TRANSLATION-UNIT-NONE 0) (:TRANSLATION-UNIT-DETAILED-PREPROCESSING-RECORD 1)
 (:TRANSLATION-UNIT-INCOMPLETE 2) (:TRANSLATION-UNIT-PRECOMPILED-PREAMBLE 4)
 (:TRANSLATION-UNIT-CACHE-COMPLETION-RESULTS 8)
 (:TRANSLATION-UNIT-FOR-SERIALIZATION 16) (:TRANSLATION-UNIT-CXXCHAINED-PCH 32)
 (:TRANSLATION-UNIT-SKIP-FUNCTION-BODIES 64)
 (:TRANSLATION-UNIT-INCLUDE-BRIEF-COMMENTS-IN-CODE-COMPLETION 128))
(CFFI:DEFCFUN
 ("clang_defaultEditingTranslationUnitOptions"
  COM.OGAMITA.CLANG:DEFAULT-EDITING-TRANSLATION-UNIT-OPTIONS)
 :UNSIGNED-INT)
(CFFI:DEFCFUN
 ("clang_parseTranslationUnit" COM.OGAMITA.CLANG:PARSE-TRANSLATION-UNIT)
 :POINTER (|CIdx| :POINTER) (SOURCE_FILENAME :STRING)
 (COMMAND_LINE_ARGS :POINTER) (NUM_COMMAND_LINE_ARGS :INT)
 (UNSAVED_FILES :POINTER) (NUM_UNSAVED_FILES :UNSIGNED-INT)
 (OPTIONS :UNSIGNED-INT))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:SAVE-TRANSLATION-UNIT-FLAGS
 (:SAVE-TRANSLATION-UNIT-NONE 0))
(CFFI:DEFCFUN
 ("clang_defaultSaveOptions" COM.OGAMITA.CLANG:DEFAULT-SAVE-OPTIONS)
 :UNSIGNED-INT (|tu| :POINTER))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:SAVE-ERROR (:SAVE-ERROR-NONE 0)
 (:SAVE-ERROR-UNKNOWN 1) (:SAVE-ERROR-TRANSLATION-ERRORS 2)
 (:SAVE-ERROR-INVALID-TU 3))
(CFFI:DEFCFUN
 ("clang_saveTranslationUnit" COM.OGAMITA.CLANG:SAVE-TRANSLATION-UNIT) :INT
 (|tu| :POINTER) (|FileName| :STRING) (OPTIONS :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_disposeTranslationUnit" COM.OGAMITA.CLANG:DISPOSE-TRANSLATION-UNIT)
 :VOID (ARG0 :POINTER))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:REPARSE-FLAGS (:REPARSE-NONE 0))
(CFFI:DEFCFUN
 ("clang_defaultReparseOptions" COM.OGAMITA.CLANG:DEFAULT-REPARSE-OPTIONS)
 :UNSIGNED-INT (|tu| :POINTER))
(CFFI:DEFCFUN
 ("clang_reparseTranslationUnit" COM.OGAMITA.CLANG:REPARSE-TRANSLATION-UNIT)
 :INT (|tu| :POINTER) (NUM_UNSAVED_FILES :UNSIGNED-INT) (UNSAVED_FILES :POINTER)
 (OPTIONS :UNSIGNED-INT))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:TURESOURCE-USAGE-KIND (:TURESOURCE-USAGE-AST 1)
 (:TURESOURCE-USAGE-IDENTIFIERS 2) (:TURESOURCE-USAGE-SELECTORS 3)
 (:TURESOURCE-USAGE-GLOBAL-COMPLETION-RESULTS 4)
 (:TURESOURCE-USAGE-SOURCE-MANAGER-CONTENT-CACHE 5)
 (:TURESOURCE-USAGE-AST-SIDE-TABLES 6)
 (:TURESOURCE-USAGE-SOURCE-MANAGER-MEMBUFFER-MALLOC 7)
 (:TURESOURCE-USAGE-SOURCE-MANAGER-MEMBUFFER-MMAP 8)
 (:TURESOURCE-USAGE-EXTERNAL-ASTSOURCE-MEMBUFFER-MALLOC 9)
 (:TURESOURCE-USAGE-EXTERNAL-ASTSOURCE-MEMBUFFER-MMAP 10)
 (:TURESOURCE-USAGE-PREPROCESSOR 11) (:TURESOURCE-USAGE-PREPROCESSING-RECORD 12)
 (:TURESOURCE-USAGE-SOURCE-MANAGER-DATA-STRUCTURES 13)
 (:TURESOURCE-USAGE-PREPROCESSOR-HEADER-SEARCH 14)
 (:TURESOURCE-USAGE-MEMORY-IN-BYTES-BEGIN 1)
 (:TURESOURCE-USAGE-MEMORY-IN-BYTES-END 14) (:TURESOURCE-USAGE-FIRST 1)
 (:TURESOURCE-USAGE-LAST 14))
(CFFI:DEFCFUN
 ("clang_getTUResourceUsageName" COM.OGAMITA.CLANG:GET-TURESOURCE-USAGE-NAME)
 :STRING (KIND COM.OGAMITA.CLANG:TURESOURCE-USAGE-KIND))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:TURESOURCE-USAGE-ENTRY
 (COM.OGAMITA.CLANG:KIND COM.OGAMITA.CLANG:TURESOURCE-USAGE-KIND)
 (COM.OGAMITA.CLANG:AMOUNT :UNSIGNED-LONG))
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:TURESOURCE-USAGE-ENTRY
 COM.OGAMITA.CLANG:TURESOURCE-USAGE-ENTRY)
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:TURESOURCE-USAGE
 (COM.OGAMITA.CLANG:DATA :POINTER) (COM.OGAMITA.CLANG:NUM-ENTRIES :UNSIGNED-INT)
 (COM.OGAMITA.CLANG:ENTRIES :POINTER))
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:TURESOURCE-USAGE
 COM.OGAMITA.CLANG:TURESOURCE-USAGE)
(CFFI:DEFCFUN
 ("clang_getCXTUResourceUsage" COM.OGAMITA.CLANG:GET-CXTURESOURCE-USAGE)
 COM.OGAMITA.CLANG:TURESOURCE-USAGE (|tu| :POINTER))
(CFFI:DEFCFUN
 ("clang_disposeCXTUResourceUsage" COM.OGAMITA.CLANG:DISPOSE-CXTURESOURCE-USAGE)
 :VOID (USAGE COM.OGAMITA.CLANG:TURESOURCE-USAGE))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:CURSOR-KIND (:CURSOR-UNEXPOSED-DECL 1)
 (:CURSOR-STRUCT-DECL 2) (:CURSOR-UNION-DECL 3) (:CURSOR-CLASS-DECL 4)
 (:CURSOR-ENUM-DECL 5) (:CURSOR-FIELD-DECL 6) (:CURSOR-ENUM-CONSTANT-DECL 7)
 (:CURSOR-FUNCTION-DECL 8) (:CURSOR-VAR-DECL 9) (:CURSOR-PARM-DECL 10)
 (:CURSOR-OBJ-CINTERFACE-DECL 11) (:CURSOR-OBJ-CCATEGORY-DECL 12)
 (:CURSOR-OBJ-CPROTOCOL-DECL 13) (:CURSOR-OBJ-CPROPERTY-DECL 14)
 (:CURSOR-OBJ-CIVAR-DECL 15) (:CURSOR-OBJ-CINSTANCE-METHOD-DECL 16)
 (:CURSOR-OBJ-CCLASS-METHOD-DECL 17) (:CURSOR-OBJ-CIMPLEMENTATION-DECL 18)
 (:CURSOR-OBJ-CCATEGORY-IMPL-DECL 19) (:CURSOR-TYPEDEF-DECL 20)
 (:CURSOR-CXXMETHOD 21) (:CURSOR-NAMESPACE 22) (:CURSOR-LINKAGE-SPEC 23)
 (:CURSOR-CONSTRUCTOR 24) (:CURSOR-DESTRUCTOR 25)
 (:CURSOR-CONVERSION-FUNCTION 26) (:CURSOR-TEMPLATE-TYPE-PARAMETER 27)
 (:CURSOR-NON-TYPE-TEMPLATE-PARAMETER 28)
 (:CURSOR-TEMPLATE-TEMPLATE-PARAMETER 29) (:CURSOR-FUNCTION-TEMPLATE 30)
 (:CURSOR-CLASS-TEMPLATE 31) (:CURSOR-CLASS-TEMPLATE-PARTIAL-SPECIALIZATION 32)
 (:CURSOR-NAMESPACE-ALIAS 33) (:CURSOR-USING-DIRECTIVE 34)
 (:CURSOR-USING-DECLARATION 35) (:CURSOR-TYPE-ALIAS-DECL 36)
 (:CURSOR-OBJ-CSYNTHESIZE-DECL 37) (:CURSOR-OBJ-CDYNAMIC-DECL 38)
 (:CURSOR-CXXACCESS-SPECIFIER 39) (:CURSOR-FIRST-DECL 1) (:CURSOR-LAST-DECL 39)
 (:CURSOR-FIRST-REF 40) (:CURSOR-OBJ-CSUPER-CLASS-REF 40)
 (:CURSOR-OBJ-CPROTOCOL-REF 41) (:CURSOR-OBJ-CCLASS-REF 42)
 (:CURSOR-TYPE-REF 43) (:CURSOR-CXXBASE-SPECIFIER 44) (:CURSOR-TEMPLATE-REF 45)
 (:CURSOR-NAMESPACE-REF 46) (:CURSOR-MEMBER-REF 47) (:CURSOR-LABEL-REF 48)
 (:CURSOR-OVERLOADED-DECL-REF 49) (:CURSOR-VARIABLE-REF 50)
 (:CURSOR-LAST-REF 50) (:CURSOR-FIRST-INVALID 70) (:CURSOR-INVALID-FILE 70)
 (:CURSOR-NO-DECL-FOUND 71) (:CURSOR-NOT-IMPLEMENTED 72)
 (:CURSOR-INVALID-CODE 73) (:CURSOR-LAST-INVALID 73) (:CURSOR-FIRST-EXPR 100)
 (:CURSOR-UNEXPOSED-EXPR 100) (:CURSOR-DECL-REF-EXPR 101)
 (:CURSOR-MEMBER-REF-EXPR 102) (:CURSOR-CALL-EXPR 103)
 (:CURSOR-OBJ-CMESSAGE-EXPR 104) (:CURSOR-BLOCK-EXPR 105)
 (:CURSOR-INTEGER-LITERAL 106) (:CURSOR-FLOATING-LITERAL 107)
 (:CURSOR-IMAGINARY-LITERAL 108) (:CURSOR-STRING-LITERAL 109)
 (:CURSOR-CHARACTER-LITERAL 110) (:CURSOR-PAREN-EXPR 111)
 (:CURSOR-UNARY-OPERATOR 112) (:CURSOR-ARRAY-SUBSCRIPT-EXPR 113)
 (:CURSOR-BINARY-OPERATOR 114) (:CURSOR-COMPOUND-ASSIGN-OPERATOR 115)
 (:CURSOR-CONDITIONAL-OPERATOR 116) (:CURSOR-CSTYLE-CAST-EXPR 117)
 (:CURSOR-COMPOUND-LITERAL-EXPR 118) (:CURSOR-INIT-LIST-EXPR 119)
 (:CURSOR-ADDR-LABEL-EXPR 120) (:CURSOR-STMT-EXPR 121)
 (:CURSOR-GENERIC-SELECTION-EXPR 122) (:CURSOR-GNUNULL-EXPR 123)
 (:CURSOR-CXXSTATIC-CAST-EXPR 124) (:CURSOR-CXXDYNAMIC-CAST-EXPR 125)
 (:CURSOR-CXXREINTERPRET-CAST-EXPR 126) (:CURSOR-CXXCONST-CAST-EXPR 127)
 (:CURSOR-CXXFUNCTIONAL-CAST-EXPR 128) (:CURSOR-CXXTYPEID-EXPR 129)
 (:CURSOR-CXXBOOL-LITERAL-EXPR 130) (:CURSOR-CXXNULL-PTR-LITERAL-EXPR 131)
 (:CURSOR-CXXTHIS-EXPR 132) (:CURSOR-CXXTHROW-EXPR 133)
 (:CURSOR-CXXNEW-EXPR 134) (:CURSOR-CXXDELETE-EXPR 135) (:CURSOR-UNARY-EXPR 136)
 (:CURSOR-OBJ-CSTRING-LITERAL 137) (:CURSOR-OBJ-CENCODE-EXPR 138)
 (:CURSOR-OBJ-CSELECTOR-EXPR 139) (:CURSOR-OBJ-CPROTOCOL-EXPR 140)
 (:CURSOR-OBJ-CBRIDGED-CAST-EXPR 141) (:CURSOR-PACK-EXPANSION-EXPR 142)
 (:CURSOR-SIZE-OF-PACK-EXPR 143) (:CURSOR-LAMBDA-EXPR 144)
 (:CURSOR-OBJ-CBOOL-LITERAL-EXPR 145) (:CURSOR-LAST-EXPR 145)
 (:CURSOR-FIRST-STMT 200) (:CURSOR-UNEXPOSED-STMT 200) (:CURSOR-LABEL-STMT 201)
 (:CURSOR-COMPOUND-STMT 202) (:CURSOR-CASE-STMT 203) (:CURSOR-DEFAULT-STMT 204)
 (:CURSOR-IF-STMT 205) (:CURSOR-SWITCH-STMT 206) (:CURSOR-WHILE-STMT 207)
 (:CURSOR-DO-STMT 208) (:CURSOR-FOR-STMT 209) (:CURSOR-GOTO-STMT 210)
 (:CURSOR-INDIRECT-GOTO-STMT 211) (:CURSOR-CONTINUE-STMT 212)
 (:CURSOR-BREAK-STMT 213) (:CURSOR-RETURN-STMT 214) (:CURSOR-GCCASM-STMT 215)
 (:CURSOR-ASM-STMT 215) (:CURSOR-OBJ-CAT-TRY-STMT 216)
 (:CURSOR-OBJ-CAT-CATCH-STMT 217) (:CURSOR-OBJ-CAT-FINALLY-STMT 218)
 (:CURSOR-OBJ-CAT-THROW-STMT 219) (:CURSOR-OBJ-CAT-SYNCHRONIZED-STMT 220)
 (:CURSOR-OBJ-CAUTORELEASE-POOL-STMT 221) (:CURSOR-OBJ-CFOR-COLLECTION-STMT 222)
 (:CURSOR-CXXCATCH-STMT 223) (:CURSOR-CXXTRY-STMT 224)
 (:CURSOR-CXXFOR-RANGE-STMT 225) (:CURSOR-SEHTRY-STMT 226)
 (:CURSOR-SEHEXCEPT-STMT 227) (:CURSOR-SEHFINALLY-STMT 228)
 (:CURSOR-MSASM-STMT 229) (:CURSOR-NULL-STMT 230) (:CURSOR-DECL-STMT 231)
 (:CURSOR-LAST-STMT 231) (:CURSOR-TRANSLATION-UNIT 300) (:CURSOR-FIRST-ATTR 400)
 (:CURSOR-UNEXPOSED-ATTR 400) (:CURSOR-IBACTION-ATTR 401)
 (:CURSOR-IBOUTLET-ATTR 402) (:CURSOR-IBOUTLET-COLLECTION-ATTR 403)
 (:CURSOR-CXXFINAL-ATTR 404) (:CURSOR-CXXOVERRIDE-ATTR 405)
 (:CURSOR-ANNOTATE-ATTR 406) (:CURSOR-ASM-LABEL-ATTR 407)
 (:CURSOR-LAST-ATTR 407) (:CURSOR-PREPROCESSING-DIRECTIVE 500)
 (:CURSOR-MACRO-DEFINITION 501) (:CURSOR-MACRO-EXPANSION 502)
 (:CURSOR-MACRO-INSTANTIATION 502) (:CURSOR-INCLUSION-DIRECTIVE 503)
 (:CURSOR-FIRST-PREPROCESSING 500) (:CURSOR-LAST-PREPROCESSING 503)
 (:CURSOR-MODULE-IMPORT-DECL 600) (:CURSOR-FIRST-EXTRA-DECL 600)
 (:CURSOR-LAST-EXTRA-DECL 600))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:CURSOR
 (COM.OGAMITA.CLANG:KIND COM.OGAMITA.CLANG:CURSOR-KIND)
 (COM.OGAMITA.CLANG:XDATA :INT) (COM.OGAMITA.CLANG:DATA :POINTER))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:COMMENT (COM.OGAMITA.CLANG:ASTNODE :POINTER)
 (COM.OGAMITA.CLANG:TRANSLATION-UNIT :POINTER))
(CFFI:DEFCFUN ("clang_getNullCursor" COM.OGAMITA.CLANG:GET-NULL-CURSOR)
 COM.OGAMITA.CLANG:CURSOR)
(CFFI:DEFCFUN
 ("clang_getTranslationUnitCursor"
  COM.OGAMITA.CLANG:GET-TRANSLATION-UNIT-CURSOR)
 COM.OGAMITA.CLANG:CURSOR (ARG0 :POINTER))
(CFFI:DEFCFUN ("clang_equalCursors" COM.OGAMITA.CLANG:EQUAL-CURSORS)
 :UNSIGNED-INT (ARG0 COM.OGAMITA.CLANG:CURSOR) (ARG1 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN ("clang_Cursor_isNull" COM.OGAMITA.CLANG:CURSOR-IS-NULL) :INT
 (CURSOR COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN ("clang_hashCursor" COM.OGAMITA.CLANG:HASH-CURSOR) :UNSIGNED-INT
 (ARG0 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN ("clang_getCursorKind" COM.OGAMITA.CLANG:GET-CURSOR-KIND)
 COM.OGAMITA.CLANG:CURSOR-KIND (ARG0 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN ("clang_isDeclaration" COM.OGAMITA.CLANG:IS-DECLARATION)
 :UNSIGNED-INT (ARG0 COM.OGAMITA.CLANG:CURSOR-KIND))
(CFFI:DEFCFUN ("clang_isReference" COM.OGAMITA.CLANG:IS-REFERENCE) :UNSIGNED-INT
 (ARG0 COM.OGAMITA.CLANG:CURSOR-KIND))
(CFFI:DEFCFUN ("clang_isExpression" COM.OGAMITA.CLANG:IS-EXPRESSION)
 :UNSIGNED-INT (ARG0 COM.OGAMITA.CLANG:CURSOR-KIND))
(CFFI:DEFCFUN ("clang_isStatement" COM.OGAMITA.CLANG:IS-STATEMENT) :UNSIGNED-INT
 (ARG0 COM.OGAMITA.CLANG:CURSOR-KIND))
(CFFI:DEFCFUN ("clang_isAttribute" COM.OGAMITA.CLANG:IS-ATTRIBUTE) :UNSIGNED-INT
 (ARG0 COM.OGAMITA.CLANG:CURSOR-KIND))
(CFFI:DEFCFUN ("clang_isInvalid" COM.OGAMITA.CLANG:IS-INVALID) :UNSIGNED-INT
 (ARG0 COM.OGAMITA.CLANG:CURSOR-KIND))
(CFFI:DEFCFUN ("clang_isTranslationUnit" COM.OGAMITA.CLANG:IS-TRANSLATION-UNIT)
 :UNSIGNED-INT (ARG0 COM.OGAMITA.CLANG:CURSOR-KIND))
(CFFI:DEFCFUN ("clang_isPreprocessing" COM.OGAMITA.CLANG:IS-PREPROCESSING)
 :UNSIGNED-INT (ARG0 COM.OGAMITA.CLANG:CURSOR-KIND))
(CFFI:DEFCFUN ("clang_isUnexposed" COM.OGAMITA.CLANG:IS-UNEXPOSED) :UNSIGNED-INT
 (ARG0 COM.OGAMITA.CLANG:CURSOR-KIND))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:LINKAGE-KIND :LINKAGE-INVALID
 :LINKAGE-NO-LINKAGE :LINKAGE-INTERNAL :LINKAGE-UNIQUE-EXTERNAL
 :LINKAGE-EXTERNAL)
(CFFI:DEFCFUN ("clang_getCursorLinkage" COM.OGAMITA.CLANG:GET-CURSOR-LINKAGE)
 COM.OGAMITA.CLANG:LINKAGE-KIND (CURSOR COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_getCursorAvailability" COM.OGAMITA.CLANG:GET-CURSOR-AVAILABILITY)
 COM.OGAMITA.CLANG:AVAILABILITY-KIND (CURSOR COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:PLATFORM-AVAILABILITY
 (COM.OGAMITA.CLANG:PLATFORM :POINTER)
 (COM.OGAMITA.CLANG:INTRODUCED COM.OGAMITA.CLANG:VERSION)
 (COM.OGAMITA.CLANG:DEPRECATED COM.OGAMITA.CLANG:VERSION)
 (COM.OGAMITA.CLANG:OBSOLETED COM.OGAMITA.CLANG:VERSION)
 (COM.OGAMITA.CLANG:UNAVAILABLE :INT) (COM.OGAMITA.CLANG:MESSAGE :POINTER))
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:PLATFORM-AVAILABILITY
 COM.OGAMITA.CLANG:PLATFORM-AVAILABILITY)
(CFFI:DEFCFUN
 ("clang_getCursorPlatformAvailability"
  COM.OGAMITA.CLANG:GET-CURSOR-PLATFORM-AVAILABILITY)
 :INT (CURSOR COM.OGAMITA.CLANG:CURSOR) (ALWAYS_DEPRECATED :POINTER)
 (DEPRECATED_MESSAGE :POINTER) (ALWAYS_UNAVAILABLE :POINTER)
 (UNAVAILABLE_MESSAGE :POINTER) (AVAILABILITY :POINTER)
 (AVAILABILITY_SIZE :INT))
(CFFI:DEFCFUN
 ("clang_disposeCXPlatformAvailability"
  COM.OGAMITA.CLANG:DISPOSE-CXPLATFORM-AVAILABILITY)
 :VOID (AVAILABILITY :POINTER))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:LANGUAGE-KIND (:LANGUAGE-INVALID 0) :LANGUAGE-C
 :LANGUAGE-OBJ-C :LANGUAGE-CPLUS-PLUS)
(CFFI:DEFCFUN ("clang_getCursorLanguage" COM.OGAMITA.CLANG:GET-CURSOR-LANGUAGE)
 COM.OGAMITA.CLANG:LANGUAGE-KIND (CURSOR COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_Cursor_getTranslationUnit"
  COM.OGAMITA.CLANG:CURSOR-GET-TRANSLATION-UNIT)
 :POINTER (ARG0 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:CURSOR-SET :POINTER)
(CFFI:DEFCFUN ("clang_createCXCursorSet" COM.OGAMITA.CLANG:CREATE-CXCURSOR-SET)
 :POINTER)
(CFFI:DEFCFUN
 ("clang_disposeCXCursorSet" COM.OGAMITA.CLANG:DISPOSE-CXCURSOR-SET) :VOID
 (CSET :POINTER))
(CFFI:DEFCFUN
 ("clang_CXCursorSet_contains" COM.OGAMITA.CLANG:CXCURSOR-SET-CONTAINS)
 :UNSIGNED-INT (CSET :POINTER) (CURSOR COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN ("clang_CXCursorSet_insert" COM.OGAMITA.CLANG:CXCURSOR-SET-INSERT)
 :UNSIGNED-INT (CSET :POINTER) (CURSOR COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_getCursorSemanticParent" COM.OGAMITA.CLANG:GET-CURSOR-SEMANTIC-PARENT)
 COM.OGAMITA.CLANG:CURSOR (CURSOR COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_getCursorLexicalParent" COM.OGAMITA.CLANG:GET-CURSOR-LEXICAL-PARENT)
 COM.OGAMITA.CLANG:CURSOR (CURSOR COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_getOverriddenCursors" COM.OGAMITA.CLANG:GET-OVERRIDDEN-CURSORS) :VOID
 (CURSOR COM.OGAMITA.CLANG:CURSOR) (OVERRIDDEN :POINTER)
 (NUM_OVERRIDDEN :POINTER))
(CFFI:DEFCFUN
 ("clang_disposeOverriddenCursors" COM.OGAMITA.CLANG:DISPOSE-OVERRIDDEN-CURSORS)
 :VOID (OVERRIDDEN :POINTER))
(CFFI:DEFCFUN ("clang_getIncludedFile" COM.OGAMITA.CLANG:GET-INCLUDED-FILE)
 :POINTER (CURSOR COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN ("clang_getCursor" COM.OGAMITA.CLANG:GET-CURSOR)
 COM.OGAMITA.CLANG:CURSOR (ARG0 :POINTER)
 (ARG1 COM.OGAMITA.CLANG:SOURCE-LOCATION))
(CFFI:DEFCFUN ("clang_getCursorLocation" COM.OGAMITA.CLANG:GET-CURSOR-LOCATION)
 COM.OGAMITA.CLANG:SOURCE-LOCATION (ARG0 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN ("clang_getCursorExtent" COM.OGAMITA.CLANG:GET-CURSOR-EXTENT)
 COM.OGAMITA.CLANG:SOURCE-RANGE (ARG0 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:TYPE-KIND (:TYPE-INVALID 0) (:TYPE-UNEXPOSED 1)
 (:TYPE-VOID 2) (:TYPE-BOOL 3) (:TYPE-CHAR-U 4) (:TYPE-UCHAR 5) (:TYPE-CHAR16 6)
 (:TYPE-CHAR32 7) (:TYPE-USHORT 8) (:TYPE-UINT 9) (:TYPE-ULONG 10)
 (:TYPE-ULONG-LONG 11) (:TYPE-UINT128 12) (:TYPE-CHAR-S 13) (:TYPE-SCHAR 14)
 (:TYPE-WCHAR 15) (:TYPE-SHORT 16) (:TYPE-INT 17) (:TYPE-LONG 18)
 (:TYPE-LONG-LONG 19) (:TYPE-INT128 20) (:TYPE-FLOAT 21) (:TYPE-DOUBLE 22)
 (:TYPE-LONG-DOUBLE 23) (:TYPE-NULL-PTR 24) (:TYPE-OVERLOAD 25)
 (:TYPE-DEPENDENT 26) (:TYPE-OBJ-CID 27) (:TYPE-OBJ-CCLASS 28)
 (:TYPE-OBJ-CSEL 29) (:TYPE-FIRST-BUILTIN 2) (:TYPE-LAST-BUILTIN 29)
 (:TYPE-COMPLEX 100) (:TYPE-POINTER 101) (:TYPE-BLOCK-POINTER 102)
 (:TYPE-LVALUE-REFERENCE 103) (:TYPE-RVALUE-REFERENCE 104) (:TYPE-RECORD 105)
 (:TYPE-ENUM 106) (:TYPE-TYPEDEF 107) (:TYPE-OBJ-CINTERFACE 108)
 (:TYPE-OBJ-COBJECT-POINTER 109) (:TYPE-FUNCTION-NO-PROTO 110)
 (:TYPE-FUNCTION-PROTO 111) (:TYPE-CONSTANT-ARRAY 112) (:TYPE-VECTOR 113))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:CALLING-CONV (:CALLING-CONV-DEFAULT 0)
 (:CALLING-CONV-C 1) (:CALLING-CONV-X86STD-CALL 2)
 (:CALLING-CONV-X86FAST-CALL 3) (:CALLING-CONV-X86THIS-CALL 4)
 (:CALLING-CONV-X86PASCAL 5) (:CALLING-CONV-AAPCS 6) (:CALLING-CONV-AAPCS-VFP 7)
 (:CALLING-CONV-PNACL-CALL 8) (:CALLING-CONV-INVALID 100)
 (:CALLING-CONV-UNEXPOSED 200))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:TYPE
 (COM.OGAMITA.CLANG:KIND COM.OGAMITA.CLANG:TYPE-KIND)
 (COM.OGAMITA.CLANG:DATA :POINTER))
(CFFI:DEFCFUN ("clang_getCursorType" COM.OGAMITA.CLANG:GET-CURSOR-TYPE)
 COM.OGAMITA.CLANG:TYPE (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_getTypedefDeclUnderlyingType"
  COM.OGAMITA.CLANG:GET-TYPEDEF-DECL-UNDERLYING-TYPE)
 COM.OGAMITA.CLANG:TYPE (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_getEnumDeclIntegerType" COM.OGAMITA.CLANG:GET-ENUM-DECL-INTEGER-TYPE)
 COM.OGAMITA.CLANG:TYPE (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_getEnumConstantDeclValue"
  COM.OGAMITA.CLANG:GET-ENUM-CONSTANT-DECL-VALUE)
 :LONG-LONG (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_getEnumConstantDeclUnsignedValue"
  COM.OGAMITA.CLANG:GET-ENUM-CONSTANT-DECL-UNSIGNED-VALUE)
 :UNSIGNED-LONG-LONG (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_Cursor_getNumArguments" COM.OGAMITA.CLANG:CURSOR-GET-NUM-ARGUMENTS)
 :INT (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN ("clang_Cursor_getArgument" COM.OGAMITA.CLANG:CURSOR-GET-ARGUMENT)
 COM.OGAMITA.CLANG:CURSOR (|c| COM.OGAMITA.CLANG:CURSOR) (I :UNSIGNED-INT))
(CFFI:DEFCFUN ("clang_equalTypes" COM.OGAMITA.CLANG:EQUAL-TYPES) :UNSIGNED-INT
 (|a| COM.OGAMITA.CLANG:TYPE) (|b| COM.OGAMITA.CLANG:TYPE))
(CFFI:DEFCFUN ("clang_getCanonicalType" COM.OGAMITA.CLANG:GET-CANONICAL-TYPE)
 COM.OGAMITA.CLANG:TYPE (T_ARG0 COM.OGAMITA.CLANG:TYPE))
(CFFI:DEFCFUN
 ("clang_isConstQualifiedType" COM.OGAMITA.CLANG:IS-CONST-QUALIFIED-TYPE)
 :UNSIGNED-INT (T_ARG0 COM.OGAMITA.CLANG:TYPE))
(CFFI:DEFCFUN
 ("clang_isVolatileQualifiedType" COM.OGAMITA.CLANG:IS-VOLATILE-QUALIFIED-TYPE)
 :UNSIGNED-INT (T_ARG0 COM.OGAMITA.CLANG:TYPE))
(CFFI:DEFCFUN
 ("clang_isRestrictQualifiedType" COM.OGAMITA.CLANG:IS-RESTRICT-QUALIFIED-TYPE)
 :UNSIGNED-INT (T_ARG0 COM.OGAMITA.CLANG:TYPE))
(CFFI:DEFCFUN ("clang_getPointeeType" COM.OGAMITA.CLANG:GET-POINTEE-TYPE)
 COM.OGAMITA.CLANG:TYPE (T_ARG0 COM.OGAMITA.CLANG:TYPE))
(CFFI:DEFCFUN
 ("clang_getTypeDeclaration" COM.OGAMITA.CLANG:GET-TYPE-DECLARATION)
 COM.OGAMITA.CLANG:CURSOR (T_ARG0 COM.OGAMITA.CLANG:TYPE))
(CFFI:DEFCFUN
 ("clang_getDeclObjCTypeEncoding" COM.OGAMITA.CLANG:GET-DECL-OBJ-CTYPE-ENCODING)
 :POINTER (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_getTypeKindSpelling" COM.OGAMITA.CLANG:GET-TYPE-KIND-SPELLING) :POINTER
 (|k| COM.OGAMITA.CLANG:TYPE-KIND))
(CFFI:DEFCFUN
 ("clang_getFunctionTypeCallingConv"
  COM.OGAMITA.CLANG:GET-FUNCTION-TYPE-CALLING-CONV)
 COM.OGAMITA.CLANG:CALLING-CONV (T_ARG0 COM.OGAMITA.CLANG:TYPE))
(CFFI:DEFCFUN ("clang_getResultType" COM.OGAMITA.CLANG:GET-RESULT-TYPE)
 COM.OGAMITA.CLANG:TYPE (T_ARG0 COM.OGAMITA.CLANG:TYPE))
(CFFI:DEFCFUN ("clang_getNumArgTypes" COM.OGAMITA.CLANG:GET-NUM-ARG-TYPES) :INT
 (T_ARG0 COM.OGAMITA.CLANG:TYPE))
(CFFI:DEFCFUN ("clang_getArgType" COM.OGAMITA.CLANG:GET-ARG-TYPE)
 COM.OGAMITA.CLANG:TYPE (T_ARG0 COM.OGAMITA.CLANG:TYPE) (I :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_isFunctionTypeVariadic" COM.OGAMITA.CLANG:IS-FUNCTION-TYPE-VARIADIC)
 :UNSIGNED-INT (T_ARG0 COM.OGAMITA.CLANG:TYPE))
(CFFI:DEFCFUN
 ("clang_getCursorResultType" COM.OGAMITA.CLANG:GET-CURSOR-RESULT-TYPE)
 COM.OGAMITA.CLANG:TYPE (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN ("clang_isPODType" COM.OGAMITA.CLANG:IS-PODTYPE) :UNSIGNED-INT
 (T_ARG0 COM.OGAMITA.CLANG:TYPE))
(CFFI:DEFCFUN ("clang_getElementType" COM.OGAMITA.CLANG:GET-ELEMENT-TYPE)
 COM.OGAMITA.CLANG:TYPE (T_ARG0 COM.OGAMITA.CLANG:TYPE))
(CFFI:DEFCFUN ("clang_getNumElements" COM.OGAMITA.CLANG:GET-NUM-ELEMENTS)
 :LONG-LONG (T_ARG0 COM.OGAMITA.CLANG:TYPE))
(CFFI:DEFCFUN
 ("clang_getArrayElementType" COM.OGAMITA.CLANG:GET-ARRAY-ELEMENT-TYPE)
 COM.OGAMITA.CLANG:TYPE (T_ARG0 COM.OGAMITA.CLANG:TYPE))
(CFFI:DEFCFUN ("clang_getArraySize" COM.OGAMITA.CLANG:GET-ARRAY-SIZE) :LONG-LONG
 (T_ARG0 COM.OGAMITA.CLANG:TYPE))
(CFFI:DEFCFUN ("clang_isVirtualBase" COM.OGAMITA.CLANG:IS-VIRTUAL-BASE)
 :UNSIGNED-INT (ARG0 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:-CXXACCESS-SPECIFIER
 :-CXXINVALID-ACCESS-SPECIFIER :-CXXPUBLIC :-CXXPROTECTED :-CXXPRIVATE)
(CFFI:DEFCFUN
 ("clang_getCXXAccessSpecifier" COM.OGAMITA.CLANG:GET-CXXACCESS-SPECIFIER)
 COM.OGAMITA.CLANG:-CXXACCESS-SPECIFIER (ARG0 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_getNumOverloadedDecls" COM.OGAMITA.CLANG:GET-NUM-OVERLOADED-DECLS)
 :UNSIGNED-INT (CURSOR COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN ("clang_getOverloadedDecl" COM.OGAMITA.CLANG:GET-OVERLOADED-DECL)
 COM.OGAMITA.CLANG:CURSOR (CURSOR COM.OGAMITA.CLANG:CURSOR)
 (INDEX :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_getIBOutletCollectionType"
  COM.OGAMITA.CLANG:GET-IBOUTLET-COLLECTION-TYPE)
 COM.OGAMITA.CLANG:TYPE (ARG0 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:CHILD-VISIT-RESULT :CHILD-VISIT-BREAK
 :CHILD-VISIT-CONTINUE :CHILD-VISIT-RECURSE)
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:CURSOR-VISITOR :POINTER)
(CFFI:DEFCFUN ("clang_visitChildren" COM.OGAMITA.CLANG:VISIT-CHILDREN)
 :UNSIGNED-INT (PARENT COM.OGAMITA.CLANG:CURSOR) (VISITOR :POINTER)
 (CLIENT_DATA :POINTER))
(CFFI:DEFCFUN ("clang_getCursorUSR" COM.OGAMITA.CLANG:GET-CURSOR-USR) :POINTER
 (ARG0 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_constructUSR_ObjCClass" COM.OGAMITA.CLANG:CONSTRUCT-USR-OBJ-CCLASS)
 :POINTER (CLASS_NAME :STRING))
(CFFI:DEFCFUN
 ("clang_constructUSR_ObjCCategory"
  COM.OGAMITA.CLANG:CONSTRUCT-USR-OBJ-CCATEGORY)
 :POINTER (CLASS_NAME :STRING) (CATEGORY_NAME :STRING))
(CFFI:DEFCFUN
 ("clang_constructUSR_ObjCProtocol"
  COM.OGAMITA.CLANG:CONSTRUCT-USR-OBJ-CPROTOCOL)
 :POINTER (PROTOCOL_NAME :STRING))
(CFFI:DEFCFUN
 ("clang_constructUSR_ObjCIvar" COM.OGAMITA.CLANG:CONSTRUCT-USR-OBJ-CIVAR)
 :POINTER (NAME :STRING) (|classUSR| :POINTER))
(CFFI:DEFCFUN
 ("clang_constructUSR_ObjCMethod" COM.OGAMITA.CLANG:CONSTRUCT-USR-OBJ-CMETHOD)
 :POINTER (NAME :STRING) (|isInstanceMethod| :UNSIGNED-INT)
 (|classUSR| :POINTER))
(CFFI:DEFCFUN
 ("clang_constructUSR_ObjCProperty"
  COM.OGAMITA.CLANG:CONSTRUCT-USR-OBJ-CPROPERTY)
 :POINTER (PROPERTY :STRING) (|classUSR| :POINTER))
(CFFI:DEFCFUN ("clang_getCursorSpelling" COM.OGAMITA.CLANG:GET-CURSOR-SPELLING)
 :POINTER (ARG0 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_Cursor_getSpellingNameRange"
  COM.OGAMITA.CLANG:CURSOR-GET-SPELLING-NAME-RANGE)
 COM.OGAMITA.CLANG:SOURCE-RANGE (ARG0 COM.OGAMITA.CLANG:CURSOR)
 (|pieceIndex| :UNSIGNED-INT) (OPTIONS :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_getCursorDisplayName" COM.OGAMITA.CLANG:GET-CURSOR-DISPLAY-NAME)
 :POINTER (ARG0 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_getCursorReferenced" COM.OGAMITA.CLANG:GET-CURSOR-REFERENCED)
 COM.OGAMITA.CLANG:CURSOR (ARG0 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_getCursorDefinition" COM.OGAMITA.CLANG:GET-CURSOR-DEFINITION)
 COM.OGAMITA.CLANG:CURSOR (ARG0 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_isCursorDefinition" COM.OGAMITA.CLANG:IS-CURSOR-DEFINITION)
 :UNSIGNED-INT (ARG0 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_getCanonicalCursor" COM.OGAMITA.CLANG:GET-CANONICAL-CURSOR)
 COM.OGAMITA.CLANG:CURSOR (ARG0 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_Cursor_getObjCSelectorIndex"
  COM.OGAMITA.CLANG:CURSOR-GET-OBJ-CSELECTOR-INDEX)
 :INT (ARG0 COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_Cursor_isDynamicCall" COM.OGAMITA.CLANG:CURSOR-IS-DYNAMIC-CALL) :INT
 (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_Cursor_getReceiverType" COM.OGAMITA.CLANG:CURSOR-GET-RECEIVER-TYPE)
 COM.OGAMITA.CLANG:TYPE (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_Cursor_getCommentRange" COM.OGAMITA.CLANG:CURSOR-GET-COMMENT-RANGE)
 COM.OGAMITA.CLANG:SOURCE-RANGE (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_Cursor_getRawCommentText"
  COM.OGAMITA.CLANG:CURSOR-GET-RAW-COMMENT-TEXT)
 :POINTER (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_Cursor_getBriefCommentText"
  COM.OGAMITA.CLANG:CURSOR-GET-BRIEF-COMMENT-TEXT)
 :POINTER (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_Cursor_getParsedComment" COM.OGAMITA.CLANG:CURSOR-GET-PARSED-COMMENT)
 COM.OGAMITA.CLANG:COMMENT (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:MODULE :POINTER)
(CFFI:DEFCFUN ("clang_Cursor_getModule" COM.OGAMITA.CLANG:CURSOR-GET-MODULE)
 :POINTER (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN ("clang_Module_getParent" COM.OGAMITA.CLANG:MODULE-GET-PARENT)
 :POINTER (|Module| :POINTER))
(CFFI:DEFCFUN ("clang_Module_getName" COM.OGAMITA.CLANG:MODULE-GET-NAME)
 :POINTER (|Module| :POINTER))
(CFFI:DEFCFUN
 ("clang_Module_getFullName" COM.OGAMITA.CLANG:MODULE-GET-FULL-NAME) :POINTER
 (|Module| :POINTER))
(CFFI:DEFCFUN
 ("clang_Module_getNumTopLevelHeaders"
  COM.OGAMITA.CLANG:MODULE-GET-NUM-TOP-LEVEL-HEADERS)
 :UNSIGNED-INT (|Module| :POINTER))
(CFFI:DEFCFUN
 ("clang_Module_getTopLevelHeader"
  COM.OGAMITA.CLANG:MODULE-GET-TOP-LEVEL-HEADER)
 :POINTER (|Module| :POINTER) (|Index| :UNSIGNED-INT))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:COMMENT-KIND (:COMMENT-NULL 0)
 (:COMMENT-TEXT 1) (:COMMENT-INLINE-COMMAND 2) (:COMMENT-HTMLSTART-TAG 3)
 (:COMMENT-HTMLEND-TAG 4) (:COMMENT-PARAGRAPH 5) (:COMMENT-BLOCK-COMMAND 6)
 (:COMMENT-PARAM-COMMAND 7) (:COMMENT-TPARAM-COMMAND 8)
 (:COMMENT-VERBATIM-BLOCK-COMMAND 9) (:COMMENT-VERBATIM-BLOCK-LINE 10)
 (:COMMENT-VERBATIM-LINE 11) (:COMMENT-FULL-COMMENT 12))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:COMMENT-INLINE-COMMAND-RENDER-KIND
 :COMMENT-INLINE-COMMAND-RENDER-KIND-NORMAL
 :COMMENT-INLINE-COMMAND-RENDER-KIND-BOLD
 :COMMENT-INLINE-COMMAND-RENDER-KIND-MONOSPACED
 :COMMENT-INLINE-COMMAND-RENDER-KIND-EMPHASIZED)
(CFFI:DEFCENUM COM.OGAMITA.CLANG:COMMENT-PARAM-PASS-DIRECTION
 :COMMENT-PARAM-PASS-DIRECTION-IN :COMMENT-PARAM-PASS-DIRECTION-OUT
 :COMMENT-PARAM-PASS-DIRECTION-IN-OUT)
(CFFI:DEFCFUN ("clang_Comment_getKind" COM.OGAMITA.CLANG:COMMENT-GET-KIND)
 COM.OGAMITA.CLANG:COMMENT-KIND (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_Comment_getNumChildren" COM.OGAMITA.CLANG:COMMENT-GET-NUM-CHILDREN)
 :UNSIGNED-INT (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN ("clang_Comment_getChild" COM.OGAMITA.CLANG:COMMENT-GET-CHILD)
 COM.OGAMITA.CLANG:COMMENT (|Comment| COM.OGAMITA.CLANG:COMMENT)
 (|ChildIdx| :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_Comment_isWhitespace" COM.OGAMITA.CLANG:COMMENT-IS-WHITESPACE)
 :UNSIGNED-INT (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_InlineContentComment_hasTrailingNewline"
  COM.OGAMITA.CLANG:INLINE-CONTENT-COMMENT-HAS-TRAILING-NEWLINE)
 :UNSIGNED-INT (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_TextComment_getText" COM.OGAMITA.CLANG:TEXT-COMMENT-GET-TEXT) :POINTER
 (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_InlineCommandComment_getCommandName"
  COM.OGAMITA.CLANG:INLINE-COMMAND-COMMENT-GET-COMMAND-NAME)
 :POINTER (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_InlineCommandComment_getRenderKind"
  COM.OGAMITA.CLANG:INLINE-COMMAND-COMMENT-GET-RENDER-KIND)
 COM.OGAMITA.CLANG:COMMENT-INLINE-COMMAND-RENDER-KIND
 (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_InlineCommandComment_getNumArgs"
  COM.OGAMITA.CLANG:INLINE-COMMAND-COMMENT-GET-NUM-ARGS)
 :UNSIGNED-INT (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_InlineCommandComment_getArgText"
  COM.OGAMITA.CLANG:INLINE-COMMAND-COMMENT-GET-ARG-TEXT)
 :POINTER (|Comment| COM.OGAMITA.CLANG:COMMENT) (|ArgIdx| :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_HTMLTagComment_getTagName"
  COM.OGAMITA.CLANG:HTMLTAG-COMMENT-GET-TAG-NAME)
 :POINTER (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_HTMLStartTagComment_isSelfClosing"
  COM.OGAMITA.CLANG:HTMLSTART-TAG-COMMENT-IS-SELF-CLOSING)
 :UNSIGNED-INT (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_HTMLStartTag_getNumAttrs"
  COM.OGAMITA.CLANG:HTMLSTART-TAG-GET-NUM-ATTRS)
 :UNSIGNED-INT (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_HTMLStartTag_getAttrName"
  COM.OGAMITA.CLANG:HTMLSTART-TAG-GET-ATTR-NAME)
 :POINTER (|Comment| COM.OGAMITA.CLANG:COMMENT) (|AttrIdx| :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_HTMLStartTag_getAttrValue"
  COM.OGAMITA.CLANG:HTMLSTART-TAG-GET-ATTR-VALUE)
 :POINTER (|Comment| COM.OGAMITA.CLANG:COMMENT) (|AttrIdx| :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_BlockCommandComment_getCommandName"
  COM.OGAMITA.CLANG:BLOCK-COMMAND-COMMENT-GET-COMMAND-NAME)
 :POINTER (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_BlockCommandComment_getNumArgs"
  COM.OGAMITA.CLANG:BLOCK-COMMAND-COMMENT-GET-NUM-ARGS)
 :UNSIGNED-INT (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_BlockCommandComment_getArgText"
  COM.OGAMITA.CLANG:BLOCK-COMMAND-COMMENT-GET-ARG-TEXT)
 :POINTER (|Comment| COM.OGAMITA.CLANG:COMMENT) (|ArgIdx| :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_BlockCommandComment_getParagraph"
  COM.OGAMITA.CLANG:BLOCK-COMMAND-COMMENT-GET-PARAGRAPH)
 COM.OGAMITA.CLANG:COMMENT (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_ParamCommandComment_getParamName"
  COM.OGAMITA.CLANG:PARAM-COMMAND-COMMENT-GET-PARAM-NAME)
 :POINTER (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_ParamCommandComment_isParamIndexValid"
  COM.OGAMITA.CLANG:PARAM-COMMAND-COMMENT-IS-PARAM-INDEX-VALID)
 :UNSIGNED-INT (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_ParamCommandComment_getParamIndex"
  COM.OGAMITA.CLANG:PARAM-COMMAND-COMMENT-GET-PARAM-INDEX)
 :UNSIGNED-INT (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_ParamCommandComment_isDirectionExplicit"
  COM.OGAMITA.CLANG:PARAM-COMMAND-COMMENT-IS-DIRECTION-EXPLICIT)
 :UNSIGNED-INT (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_ParamCommandComment_getDirection"
  COM.OGAMITA.CLANG:PARAM-COMMAND-COMMENT-GET-DIRECTION)
 COM.OGAMITA.CLANG:COMMENT-PARAM-PASS-DIRECTION
 (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_TParamCommandComment_getParamName"
  COM.OGAMITA.CLANG:TPARAM-COMMAND-COMMENT-GET-PARAM-NAME)
 :POINTER (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_TParamCommandComment_isParamPositionValid"
  COM.OGAMITA.CLANG:TPARAM-COMMAND-COMMENT-IS-PARAM-POSITION-VALID)
 :UNSIGNED-INT (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_TParamCommandComment_getDepth"
  COM.OGAMITA.CLANG:TPARAM-COMMAND-COMMENT-GET-DEPTH)
 :UNSIGNED-INT (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_TParamCommandComment_getIndex"
  COM.OGAMITA.CLANG:TPARAM-COMMAND-COMMENT-GET-INDEX)
 :UNSIGNED-INT (|Comment| COM.OGAMITA.CLANG:COMMENT) (|Depth| :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_VerbatimBlockLineComment_getText"
  COM.OGAMITA.CLANG:VERBATIM-BLOCK-LINE-COMMENT-GET-TEXT)
 :POINTER (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_VerbatimLineComment_getText"
  COM.OGAMITA.CLANG:VERBATIM-LINE-COMMENT-GET-TEXT)
 :POINTER (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_HTMLTagComment_getAsString"
  COM.OGAMITA.CLANG:HTMLTAG-COMMENT-GET-AS-STRING)
 :POINTER (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_FullComment_getAsHTML" COM.OGAMITA.CLANG:FULL-COMMENT-GET-AS-HTML)
 :POINTER (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN
 ("clang_FullComment_getAsXML" COM.OGAMITA.CLANG:FULL-COMMENT-GET-AS-XML)
 :POINTER (|Comment| COM.OGAMITA.CLANG:COMMENT))
(CFFI:DEFCFUN ("clang_CXXMethod_isStatic" COM.OGAMITA.CLANG:CXXMETHOD-IS-STATIC)
 :UNSIGNED-INT (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_CXXMethod_isVirtual" COM.OGAMITA.CLANG:CXXMETHOD-IS-VIRTUAL)
 :UNSIGNED-INT (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_getTemplateCursorKind" COM.OGAMITA.CLANG:GET-TEMPLATE-CURSOR-KIND)
 COM.OGAMITA.CLANG:CURSOR-KIND (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_getSpecializedCursorTemplate"
  COM.OGAMITA.CLANG:GET-SPECIALIZED-CURSOR-TEMPLATE)
 COM.OGAMITA.CLANG:CURSOR (|c| COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCFUN
 ("clang_getCursorReferenceNameRange"
  COM.OGAMITA.CLANG:GET-CURSOR-REFERENCE-NAME-RANGE)
 COM.OGAMITA.CLANG:SOURCE-RANGE (|c| COM.OGAMITA.CLANG:CURSOR)
 (|NameFlags| :UNSIGNED-INT) (|PieceIndex| :UNSIGNED-INT))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:NAME-REF-FLAGS (:NAME-RANGE-WANT-QUALIFIER 1)
 (:NAME-RANGE-WANT-TEMPLATE-ARGS 2) (:NAME-RANGE-WANT-SINGLE-PIECE 4))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:TOKEN-KIND :TOKEN-PUNCTUATION :TOKEN-KEYWORD
 :TOKEN-IDENTIFIER :TOKEN-LITERAL :TOKEN-COMMENT)
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:TOKEN (COM.OGAMITA.CLANG:INT-DATA :POINTER)
 (COM.OGAMITA.CLANG:PTR-DATA :POINTER))
(CFFI:DEFCFUN ("clang_getTokenKind" COM.OGAMITA.CLANG:GET-TOKEN-KIND)
 COM.OGAMITA.CLANG:TOKEN-KIND (ARG0 COM.OGAMITA.CLANG:TOKEN))
(CFFI:DEFCFUN ("clang_getTokenSpelling" COM.OGAMITA.CLANG:GET-TOKEN-SPELLING)
 :POINTER (ARG0 :POINTER) (ARG1 COM.OGAMITA.CLANG:TOKEN))
(CFFI:DEFCFUN ("clang_getTokenLocation" COM.OGAMITA.CLANG:GET-TOKEN-LOCATION)
 COM.OGAMITA.CLANG:SOURCE-LOCATION (ARG0 :POINTER)
 (ARG1 COM.OGAMITA.CLANG:TOKEN))
(CFFI:DEFCFUN ("clang_getTokenExtent" COM.OGAMITA.CLANG:GET-TOKEN-EXTENT)
 COM.OGAMITA.CLANG:SOURCE-RANGE (ARG0 :POINTER) (ARG1 COM.OGAMITA.CLANG:TOKEN))
(CFFI:DEFCFUN ("clang_tokenize" COM.OGAMITA.CLANG:CLANG-TOKENIZE) :VOID
 (|tu| :POINTER) (|Range| COM.OGAMITA.CLANG:SOURCE-RANGE) (|Tokens| :POINTER)
 (|NumTokens| :POINTER))
(CFFI:DEFCFUN ("clang_annotateTokens" COM.OGAMITA.CLANG:ANNOTATE-TOKENS) :VOID
 (|tu| :POINTER) (|Tokens| :POINTER) (|NumTokens| :UNSIGNED-INT)
 (|Cursors| :POINTER))
(CFFI:DEFCFUN ("clang_disposeTokens" COM.OGAMITA.CLANG:DISPOSE-TOKENS) :VOID
 (|tu| :POINTER) (|Tokens| :POINTER) (|NumTokens| :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_getCursorKindSpelling" COM.OGAMITA.CLANG:GET-CURSOR-KIND-SPELLING)
 :POINTER (|Kind| COM.OGAMITA.CLANG:CURSOR-KIND))
(CFFI:DEFCFUN
 ("clang_getDefinitionSpellingAndExtent"
  COM.OGAMITA.CLANG:GET-DEFINITION-SPELLING-AND-EXTENT)
 :VOID (ARG0 COM.OGAMITA.CLANG:CURSOR) (|startBuf| :POINTER) (|endBuf| :POINTER)
 (|startLine| :POINTER) (|startColumn| :POINTER) (|endLine| :POINTER)
 (|endColumn| :POINTER))
(CFFI:DEFCFUN ("clang_enableStackTraces" COM.OGAMITA.CLANG:ENABLE-STACK-TRACES)
 :VOID)
(CFFI:DEFCFUN ("clang_executeOnThread" COM.OGAMITA.CLANG:EXECUTE-ON-THREAD)
 :VOID (FN :POINTER) (USER_DATA :POINTER) (STACK_SIZE :UNSIGNED-INT))
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:COMPLETION-STRING :POINTER)
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:COMPLETION-RESULT
 (COM.OGAMITA.CLANG:CURSOR-KIND COM.OGAMITA.CLANG:CURSOR-KIND)
 (COM.OGAMITA.CLANG:COMPLETION-STRING :POINTER))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:COMPLETION-CHUNK-KIND
 :COMPLETION-CHUNK-OPTIONAL :COMPLETION-CHUNK-TYPED-TEXT :COMPLETION-CHUNK-TEXT
 :COMPLETION-CHUNK-PLACEHOLDER :COMPLETION-CHUNK-INFORMATIVE
 :COMPLETION-CHUNK-CURRENT-PARAMETER :COMPLETION-CHUNK-LEFT-PAREN
 :COMPLETION-CHUNK-RIGHT-PAREN :COMPLETION-CHUNK-LEFT-BRACKET
 :COMPLETION-CHUNK-RIGHT-BRACKET :COMPLETION-CHUNK-LEFT-BRACE
 :COMPLETION-CHUNK-RIGHT-BRACE :COMPLETION-CHUNK-LEFT-ANGLE
 :COMPLETION-CHUNK-RIGHT-ANGLE :COMPLETION-CHUNK-COMMA
 :COMPLETION-CHUNK-RESULT-TYPE :COMPLETION-CHUNK-COLON
 :COMPLETION-CHUNK-SEMI-COLON :COMPLETION-CHUNK-EQUAL
 :COMPLETION-CHUNK-HORIZONTAL-SPACE :COMPLETION-CHUNK-VERTICAL-SPACE)
(CFFI:DEFCFUN
 ("clang_getCompletionChunkKind" COM.OGAMITA.CLANG:GET-COMPLETION-CHUNK-KIND)
 COM.OGAMITA.CLANG:COMPLETION-CHUNK-KIND (COMPLETION_STRING :POINTER)
 (CHUNK_NUMBER :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_getCompletionChunkText" COM.OGAMITA.CLANG:GET-COMPLETION-CHUNK-TEXT)
 :POINTER (COMPLETION_STRING :POINTER) (CHUNK_NUMBER :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_getCompletionChunkCompletionString"
  COM.OGAMITA.CLANG:GET-COMPLETION-CHUNK-COMPLETION-STRING)
 :POINTER (COMPLETION_STRING :POINTER) (CHUNK_NUMBER :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_getNumCompletionChunks" COM.OGAMITA.CLANG:GET-NUM-COMPLETION-CHUNKS)
 :UNSIGNED-INT (COMPLETION_STRING :POINTER))
(CFFI:DEFCFUN
 ("clang_getCompletionPriority" COM.OGAMITA.CLANG:GET-COMPLETION-PRIORITY)
 :UNSIGNED-INT (COMPLETION_STRING :POINTER))
(CFFI:DEFCFUN
 ("clang_getCompletionAvailability"
  COM.OGAMITA.CLANG:GET-COMPLETION-AVAILABILITY)
 COM.OGAMITA.CLANG:AVAILABILITY-KIND (COMPLETION_STRING :POINTER))
(CFFI:DEFCFUN
 ("clang_getCompletionNumAnnotations"
  COM.OGAMITA.CLANG:GET-COMPLETION-NUM-ANNOTATIONS)
 :UNSIGNED-INT (COMPLETION_STRING :POINTER))
(CFFI:DEFCFUN
 ("clang_getCompletionAnnotation" COM.OGAMITA.CLANG:GET-COMPLETION-ANNOTATION)
 :POINTER (COMPLETION_STRING :POINTER) (ANNOTATION_NUMBER :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_getCompletionParent" COM.OGAMITA.CLANG:GET-COMPLETION-PARENT) :POINTER
 (COMPLETION_STRING :POINTER) (KIND :POINTER))
(CFFI:DEFCFUN
 ("clang_getCompletionBriefComment"
  COM.OGAMITA.CLANG:GET-COMPLETION-BRIEF-COMMENT)
 :POINTER (COMPLETION_STRING :POINTER))
(CFFI:DEFCFUN
 ("clang_getCursorCompletionString"
  COM.OGAMITA.CLANG:GET-CURSOR-COMPLETION-STRING)
 :POINTER (CURSOR COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:CODE-COMPLETE-RESULTS
 (COM.OGAMITA.CLANG:RESULTS :POINTER)
 (COM.OGAMITA.CLANG:NUM-RESULTS :UNSIGNED-INT))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:CODE-COMPLETE-FLAGS
 (:CODE-COMPLETE-INCLUDE-MACROS 1) (:CODE-COMPLETE-INCLUDE-CODE-PATTERNS 2)
 (:CODE-COMPLETE-INCLUDE-BRIEF-COMMENTS 4))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:COMPLETION-CONTEXT
 (:COMPLETION-CONTEXT-UNEXPOSED 0) (:COMPLETION-CONTEXT-ANY-TYPE 1)
 (:COMPLETION-CONTEXT-ANY-VALUE 2) (:COMPLETION-CONTEXT-OBJ-COBJECT-VALUE 4)
 (:COMPLETION-CONTEXT-OBJ-CSELECTOR-VALUE 8)
 (:COMPLETION-CONTEXT-CXXCLASS-TYPE-VALUE 16)
 (:COMPLETION-CONTEXT-DOT-MEMBER-ACCESS 32)
 (:COMPLETION-CONTEXT-ARROW-MEMBER-ACCESS 64)
 (:COMPLETION-CONTEXT-OBJ-CPROPERTY-ACCESS 128)
 (:COMPLETION-CONTEXT-ENUM-TAG 256) (:COMPLETION-CONTEXT-UNION-TAG 512)
 (:COMPLETION-CONTEXT-STRUCT-TAG 1024) (:COMPLETION-CONTEXT-CLASS-TAG 2048)
 (:COMPLETION-CONTEXT-NAMESPACE 4096)
 (:COMPLETION-CONTEXT-NESTED-NAME-SPECIFIER 8192)
 (:COMPLETION-CONTEXT-OBJ-CINTERFACE 16384)
 (:COMPLETION-CONTEXT-OBJ-CPROTOCOL 32768)
 (:COMPLETION-CONTEXT-OBJ-CCATEGORY 65536)
 (:COMPLETION-CONTEXT-OBJ-CINSTANCE-MESSAGE 131072)
 (:COMPLETION-CONTEXT-OBJ-CCLASS-MESSAGE 262144)
 (:COMPLETION-CONTEXT-OBJ-CSELECTOR-NAME 524288)
 (:COMPLETION-CONTEXT-MACRO-NAME 1048576)
 (:COMPLETION-CONTEXT-NATURAL-LANGUAGE 2097152)
 (:COMPLETION-CONTEXT-UNKNOWN 4194303))
(CFFI:DEFCFUN
 ("clang_defaultCodeCompleteOptions"
  COM.OGAMITA.CLANG:DEFAULT-CODE-COMPLETE-OPTIONS)
 :UNSIGNED-INT)
(CFFI:DEFCFUN ("clang_codeCompleteAt" COM.OGAMITA.CLANG:CODE-COMPLETE-AT)
 :POINTER (|tu| :POINTER) (COMPLETE_FILENAME :STRING)
 (COMPLETE_LINE :UNSIGNED-INT) (COMPLETE_COLUMN :UNSIGNED-INT)
 (UNSAVED_FILES :POINTER) (NUM_UNSAVED_FILES :UNSIGNED-INT)
 (OPTIONS :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_sortCodeCompletionResults"
  COM.OGAMITA.CLANG:SORT-CODE-COMPLETION-RESULTS)
 :VOID (|Results| :POINTER) (|NumResults| :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_disposeCodeCompleteResults"
  COM.OGAMITA.CLANG:DISPOSE-CODE-COMPLETE-RESULTS)
 :VOID (|Results| :POINTER))
(CFFI:DEFCFUN
 ("clang_codeCompleteGetNumDiagnostics"
  COM.OGAMITA.CLANG:CODE-COMPLETE-GET-NUM-DIAGNOSTICS)
 :UNSIGNED-INT (|Results| :POINTER))
(CFFI:DEFCFUN
 ("clang_codeCompleteGetDiagnostic"
  COM.OGAMITA.CLANG:CODE-COMPLETE-GET-DIAGNOSTIC)
 :POINTER (|Results| :POINTER) (|Index| :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_codeCompleteGetContexts" COM.OGAMITA.CLANG:CODE-COMPLETE-GET-CONTEXTS)
 :UNSIGNED-LONG-LONG (|Results| :POINTER))
(CFFI:DEFCFUN
 ("clang_codeCompleteGetContainerKind"
  COM.OGAMITA.CLANG:CODE-COMPLETE-GET-CONTAINER-KIND)
 COM.OGAMITA.CLANG:CURSOR-KIND (|Results| :POINTER) (|IsIncomplete| :POINTER))
(CFFI:DEFCFUN
 ("clang_codeCompleteGetContainerUSR"
  COM.OGAMITA.CLANG:CODE-COMPLETE-GET-CONTAINER-USR)
 :POINTER (|Results| :POINTER))
(CFFI:DEFCFUN
 ("clang_codeCompleteGetObjCSelector"
  COM.OGAMITA.CLANG:CODE-COMPLETE-GET-OBJ-CSELECTOR)
 :POINTER (|Results| :POINTER))
(CFFI:DEFCFUN ("clang_getClangVersion" COM.OGAMITA.CLANG:GET-CLANG-VERSION)
 :POINTER)
(CFFI:DEFCFUN
 ("clang_toggleCrashRecovery" COM.OGAMITA.CLANG:TOGGLE-CRASH-RECOVERY) :VOID
 (|isEnabled| :UNSIGNED-INT))
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:INCLUSION-VISITOR :POINTER)
(CFFI:DEFCFUN ("clang_getInclusions" COM.OGAMITA.CLANG:GET-INCLUSIONS) :VOID
 (TU :POINTER) (VISITOR :POINTER) (CLIENT_DATA :POINTER))
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:REMAPPING :POINTER)
(CFFI:DEFCFUN ("clang_getRemappings" COM.OGAMITA.CLANG:GET-REMAPPINGS) :POINTER
 (PATH :STRING))
(CFFI:DEFCFUN
 ("clang_getRemappingsFromFileList"
  COM.OGAMITA.CLANG:GET-REMAPPINGS-FROM-FILE-LIST)
 :POINTER (|filePaths| :POINTER) (|numFiles| :UNSIGNED-INT))
(CFFI:DEFCFUN ("clang_remap_getNumFiles" COM.OGAMITA.CLANG:REMAP-GET-NUM-FILES)
 :UNSIGNED-INT (ARG0 :POINTER))
(CFFI:DEFCFUN ("clang_remap_getFilenames" COM.OGAMITA.CLANG:REMAP-GET-FILENAMES)
 :VOID (ARG0 :POINTER) (INDEX :UNSIGNED-INT) (ORIGINAL :POINTER)
 (TRANSFORMED :POINTER))
(CFFI:DEFCFUN ("clang_remap_dispose" COM.OGAMITA.CLANG:CLANG-REMAP-DISPOSE)
 :VOID (ARG0 :POINTER))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:VISITOR-RESULT :VISIT-BREAK :VISIT-CONTINUE)
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:CURSOR-AND-RANGE-VISITOR
 (COM.OGAMITA.CLANG:CONTEXT :POINTER) (COM.OGAMITA.CLANG:VISIT :POINTER))
(CFFI:DEFCFUN
 ("clang_findReferencesInFile" COM.OGAMITA.CLANG:FIND-REFERENCES-IN-FILE) :VOID
 (CURSOR COM.OGAMITA.CLANG:CURSOR) (FILE :POINTER)
 (VISITOR COM.OGAMITA.CLANG:CURSOR-AND-RANGE-VISITOR))
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:IDX-CLIENT-FILE :POINTER)
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:IDX-CLIENT-ENTITY :POINTER)
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:IDX-CLIENT-CONTAINER :POINTER)
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:IDX-CLIENT-ASTFILE :POINTER)
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-LOC (COM.OGAMITA.CLANG:PTR-DATA :POINTER)
 (COM.OGAMITA.CLANG:INT-DATA :UNSIGNED-INT))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-INCLUDED-FILE-INFO
 (COM.OGAMITA.CLANG:HASH-LOC COM.OGAMITA.CLANG:IDX-LOC)
 (COM.OGAMITA.CLANG:FILENAME :STRING) (COM.OGAMITA.CLANG:FILE :POINTER)
 (COM.OGAMITA.CLANG:IS-IMPORT :INT) (COM.OGAMITA.CLANG:IS-ANGLED :INT)
 (COM.OGAMITA.CLANG:IS-MODULE-IMPORT :INT))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-IMPORTED-ASTFILE-INFO
 (COM.OGAMITA.CLANG:FILE :POINTER) (COM.OGAMITA.CLANG:MODULE :POINTER)
 (COM.OGAMITA.CLANG:LOC COM.OGAMITA.CLANG:IDX-LOC)
 (COM.OGAMITA.CLANG:IS-IMPLICIT :INT))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:IDX-ENTITY-KIND (:IDX-ENTITY-UNEXPOSED 0)
 (:IDX-ENTITY-TYPEDEF 1) (:IDX-ENTITY-FUNCTION 2) (:IDX-ENTITY-VARIABLE 3)
 (:IDX-ENTITY-FIELD 4) (:IDX-ENTITY-ENUM-CONSTANT 5) (:IDX-ENTITY-OBJ-CCLASS 6)
 (:IDX-ENTITY-OBJ-CPROTOCOL 7) (:IDX-ENTITY-OBJ-CCATEGORY 8)
 (:IDX-ENTITY-OBJ-CINSTANCE-METHOD 9) (:IDX-ENTITY-OBJ-CCLASS-METHOD 10)
 (:IDX-ENTITY-OBJ-CPROPERTY 11) (:IDX-ENTITY-OBJ-CIVAR 12) (:IDX-ENTITY-ENUM 13)
 (:IDX-ENTITY-STRUCT 14) (:IDX-ENTITY-UNION 15) (:IDX-ENTITY-CXXCLASS 16)
 (:IDX-ENTITY-CXXNAMESPACE 17) (:IDX-ENTITY-CXXNAMESPACE-ALIAS 18)
 (:IDX-ENTITY-CXXSTATIC-VARIABLE 19) (:IDX-ENTITY-CXXSTATIC-METHOD 20)
 (:IDX-ENTITY-CXXINSTANCE-METHOD 21) (:IDX-ENTITY-CXXCONSTRUCTOR 22)
 (:IDX-ENTITY-CXXDESTRUCTOR 23) (:IDX-ENTITY-CXXCONVERSION-FUNCTION 24)
 (:IDX-ENTITY-CXXTYPE-ALIAS 25) (:IDX-ENTITY-CXXINTERFACE 26))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:IDX-ENTITY-LANGUAGE (:IDX-ENTITY-LANG-NONE 0)
 (:IDX-ENTITY-LANG-C 1) (:IDX-ENTITY-LANG-OBJ-C 2) (:IDX-ENTITY-LANG-CXX 3))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:IDX-ENTITY-CXXTEMPLATE-KIND
 (:IDX-ENTITY-NON-TEMPLATE 0) (:IDX-ENTITY-TEMPLATE 1)
 (:IDX-ENTITY-TEMPLATE-PARTIAL-SPECIALIZATION 2)
 (:IDX-ENTITY-TEMPLATE-SPECIALIZATION 3))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:IDX-ATTR-KIND (:IDX-ATTR-UNEXPOSED 0)
 (:IDX-ATTR-IBACTION 1) (:IDX-ATTR-IBOUTLET 2)
 (:IDX-ATTR-IBOUTLET-COLLECTION 3))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-ATTR-INFO
 (COM.OGAMITA.CLANG:KIND COM.OGAMITA.CLANG:IDX-ATTR-KIND)
 (COM.OGAMITA.CLANG:CURSOR COM.OGAMITA.CLANG:CURSOR)
 (COM.OGAMITA.CLANG:LOC COM.OGAMITA.CLANG:IDX-LOC))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-ENTITY-INFO
 (COM.OGAMITA.CLANG:KIND COM.OGAMITA.CLANG:IDX-ENTITY-KIND)
 (COM.OGAMITA.CLANG:TEMPLATE-KIND COM.OGAMITA.CLANG:IDX-ENTITY-CXXTEMPLATE-KIND)
 (COM.OGAMITA.CLANG:LANG COM.OGAMITA.CLANG:IDX-ENTITY-LANGUAGE)
 (COM.OGAMITA.CLANG:NAME :STRING) (COM.OGAMITA.CLANG:USR :STRING)
 (COM.OGAMITA.CLANG:CURSOR COM.OGAMITA.CLANG:CURSOR)
 (COM.OGAMITA.CLANG:ATTRIBUTES :POINTER)
 (COM.OGAMITA.CLANG:NUM-ATTRIBUTES :UNSIGNED-INT))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-CONTAINER-INFO
 (COM.OGAMITA.CLANG:CURSOR COM.OGAMITA.CLANG:CURSOR))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-IBOUTLET-COLLECTION-ATTR-INFO
 (COM.OGAMITA.CLANG:ATTR-INFO :POINTER) (COM.OGAMITA.CLANG:OBJC-CLASS :POINTER)
 (COM.OGAMITA.CLANG:CLASS-CURSOR COM.OGAMITA.CLANG:CURSOR)
 (COM.OGAMITA.CLANG:CLASS-LOC COM.OGAMITA.CLANG:IDX-LOC))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-DECL-INFO
 (COM.OGAMITA.CLANG:ENTITY-INFO :POINTER)
 (COM.OGAMITA.CLANG:CURSOR COM.OGAMITA.CLANG:CURSOR)
 (COM.OGAMITA.CLANG:LOC COM.OGAMITA.CLANG:IDX-LOC)
 (COM.OGAMITA.CLANG:SEMANTIC-CONTAINER :POINTER)
 (COM.OGAMITA.CLANG:LEXICAL-CONTAINER :POINTER)
 (COM.OGAMITA.CLANG:IS-REDECLARATION :INT)
 (COM.OGAMITA.CLANG:IS-DEFINITION :INT) (COM.OGAMITA.CLANG:IS-CONTAINER :INT)
 (COM.OGAMITA.CLANG:DECL-AS-CONTAINER :POINTER)
 (COM.OGAMITA.CLANG:IS-IMPLICIT :INT) (COM.OGAMITA.CLANG:ATTRIBUTES :POINTER)
 (COM.OGAMITA.CLANG:NUM-ATTRIBUTES :UNSIGNED-INT))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:IDX-OBJ-CCONTAINER-KIND
 (:IDX-OBJ-CCONTAINER-FORWARD-REF 0) (:IDX-OBJ-CCONTAINER-INTERFACE 1)
 (:IDX-OBJ-CCONTAINER-IMPLEMENTATION 2))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-OBJ-CCONTAINER-DECL-INFO
 (COM.OGAMITA.CLANG:DECL-INFO :POINTER)
 (COM.OGAMITA.CLANG:KIND COM.OGAMITA.CLANG:IDX-OBJ-CCONTAINER-KIND))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-BASE-CLASS-INFO
 (COM.OGAMITA.CLANG:BASE :POINTER)
 (COM.OGAMITA.CLANG:CURSOR COM.OGAMITA.CLANG:CURSOR)
 (COM.OGAMITA.CLANG:LOC COM.OGAMITA.CLANG:IDX-LOC))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-OBJ-CPROTOCOL-REF-INFO
 (COM.OGAMITA.CLANG:PROTOCOL :POINTER)
 (COM.OGAMITA.CLANG:CURSOR COM.OGAMITA.CLANG:CURSOR)
 (COM.OGAMITA.CLANG:LOC COM.OGAMITA.CLANG:IDX-LOC))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-OBJ-CPROTOCOL-REF-LIST-INFO
 (COM.OGAMITA.CLANG:PROTOCOLS :POINTER)
 (COM.OGAMITA.CLANG:NUM-PROTOCOLS :UNSIGNED-INT))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-OBJ-CINTERFACE-DECL-INFO
 (COM.OGAMITA.CLANG:CONTAINER-INFO :POINTER)
 (COM.OGAMITA.CLANG:SUPER-INFO :POINTER) (COM.OGAMITA.CLANG:PROTOCOLS :POINTER))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-OBJ-CCATEGORY-DECL-INFO
 (COM.OGAMITA.CLANG:CONTAINER-INFO :POINTER)
 (COM.OGAMITA.CLANG:OBJC-CLASS :POINTER)
 (COM.OGAMITA.CLANG:CLASS-CURSOR COM.OGAMITA.CLANG:CURSOR)
 (COM.OGAMITA.CLANG:CLASS-LOC COM.OGAMITA.CLANG:IDX-LOC)
 (COM.OGAMITA.CLANG:PROTOCOLS :POINTER))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-OBJ-CPROPERTY-DECL-INFO
 (COM.OGAMITA.CLANG:DECL-INFO :POINTER) (COM.OGAMITA.CLANG:GETTER :POINTER)
 (COM.OGAMITA.CLANG:SETTER :POINTER))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-CXXCLASS-DECL-INFO
 (COM.OGAMITA.CLANG:DECL-INFO :POINTER) (COM.OGAMITA.CLANG:BASES :POINTER)
 (COM.OGAMITA.CLANG:NUM-BASES :UNSIGNED-INT))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:IDX-ENTITY-REF-KIND (:IDX-ENTITY-REF-DIRECT 1)
 (:IDX-ENTITY-REF-IMPLICIT 2))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:IDX-ENTITY-REF-INFO
 (COM.OGAMITA.CLANG:KIND COM.OGAMITA.CLANG:IDX-ENTITY-REF-KIND)
 (COM.OGAMITA.CLANG:CURSOR COM.OGAMITA.CLANG:CURSOR)
 (COM.OGAMITA.CLANG:LOC COM.OGAMITA.CLANG:IDX-LOC)
 (COM.OGAMITA.CLANG:REFERENCED-ENTITY :POINTER)
 (COM.OGAMITA.CLANG:PARENT-ENTITY :POINTER)
 (COM.OGAMITA.CLANG:CONTAINER :POINTER))
(CFFI:DEFCSTRUCT COM.OGAMITA.CLANG:INDEXER-CALLBACKS
 (COM.OGAMITA.CLANG:ABORT-QUERY :POINTER)
 (COM.OGAMITA.CLANG:DIAGNOSTIC :POINTER)
 (COM.OGAMITA.CLANG:ENTERED-MAIN-FILE :POINTER)
 (COM.OGAMITA.CLANG:PP-INCLUDED-FILE :POINTER)
 (COM.OGAMITA.CLANG:IMPORTED-ASTFILE :POINTER)
 (COM.OGAMITA.CLANG:STARTED-TRANSLATION-UNIT :POINTER)
 (COM.OGAMITA.CLANG:INDEX-DECLARATION :POINTER)
 (COM.OGAMITA.CLANG:INDEX-ENTITY-REFERENCE :POINTER))
(CFFI:DEFCFUN
 ("clang_index_isEntityObjCContainerKind"
  COM.OGAMITA.CLANG:INDEX-IS-ENTITY-OBJ-CCONTAINER-KIND)
 :INT (ARG0 COM.OGAMITA.CLANG:IDX-ENTITY-KIND))
(CFFI:DEFCFUN
 ("clang_index_getObjCContainerDeclInfo"
  COM.OGAMITA.CLANG:INDEX-GET-OBJ-CCONTAINER-DECL-INFO)
 :POINTER (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_index_getObjCInterfaceDeclInfo"
  COM.OGAMITA.CLANG:INDEX-GET-OBJ-CINTERFACE-DECL-INFO)
 :POINTER (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_index_getObjCCategoryDeclInfo"
  COM.OGAMITA.CLANG:INDEX-GET-OBJ-CCATEGORY-DECL-INFO)
 :POINTER (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_index_getObjCProtocolRefListInfo"
  COM.OGAMITA.CLANG:INDEX-GET-OBJ-CPROTOCOL-REF-LIST-INFO)
 :POINTER (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_index_getObjCPropertyDeclInfo"
  COM.OGAMITA.CLANG:INDEX-GET-OBJ-CPROPERTY-DECL-INFO)
 :POINTER (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_index_getIBOutletCollectionAttrInfo"
  COM.OGAMITA.CLANG:INDEX-GET-IBOUTLET-COLLECTION-ATTR-INFO)
 :POINTER (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_index_getCXXClassDeclInfo"
  COM.OGAMITA.CLANG:INDEX-GET-CXXCLASS-DECL-INFO)
 :POINTER (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_index_getClientContainer" COM.OGAMITA.CLANG:INDEX-GET-CLIENT-CONTAINER)
 :POINTER (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_index_setClientContainer" COM.OGAMITA.CLANG:INDEX-SET-CLIENT-CONTAINER)
 :VOID (ARG0 :POINTER) (ARG1 :POINTER))
(CFFI:DEFCFUN
 ("clang_index_getClientEntity" COM.OGAMITA.CLANG:INDEX-GET-CLIENT-ENTITY)
 :POINTER (ARG0 :POINTER))
(CFFI:DEFCFUN
 ("clang_index_setClientEntity" COM.OGAMITA.CLANG:INDEX-SET-CLIENT-ENTITY) :VOID
 (ARG0 :POINTER) (ARG1 :POINTER))
(CFFI:DEFCTYPE COM.OGAMITA.CLANG:INDEX-ACTION :POINTER)
(CFFI:DEFCFUN ("clang_IndexAction_create" COM.OGAMITA.CLANG:INDEX-ACTION-CREATE)
 :POINTER (|CIdx| :POINTER))
(CFFI:DEFCFUN
 ("clang_IndexAction_dispose" COM.OGAMITA.CLANG:INDEX-ACTION-DISPOSE) :VOID
 (ARG0 :POINTER))
(CFFI:DEFCENUM COM.OGAMITA.CLANG:INDEX-OPT-FLAGS (:INDEX-OPT-NONE 0)
 (:INDEX-OPT-SUPPRESS-REDUNDANT-REFS 1)
 (:INDEX-OPT-INDEX-FUNCTION-LOCAL-SYMBOLS 2)
 (:INDEX-OPT-INDEX-IMPLICIT-TEMPLATE-INSTANTIATIONS 4)
 (:INDEX-OPT-SUPPRESS-WARNINGS 8))
(CFFI:DEFCFUN ("clang_indexSourceFile" COM.OGAMITA.CLANG:INDEX-SOURCE-FILE) :INT
 (ARG0 :POINTER) (CLIENT_DATA :POINTER) (INDEX_CALLBACKS :POINTER)
 (INDEX_CALLBACKS_SIZE :UNSIGNED-INT) (INDEX_OPTIONS :UNSIGNED-INT)
 (SOURCE_FILENAME :STRING) (COMMAND_LINE_ARGS :POINTER)
 (NUM_COMMAND_LINE_ARGS :INT) (UNSAVED_FILES :POINTER)
 (NUM_UNSAVED_FILES :UNSIGNED-INT) (|out_TU| :POINTER)
 (|TU_options| :UNSIGNED-INT))
(CFFI:DEFCFUN
 ("clang_indexTranslationUnit" COM.OGAMITA.CLANG:INDEX-TRANSLATION-UNIT) :INT
 (ARG0 :POINTER) (CLIENT_DATA :POINTER) (INDEX_CALLBACKS :POINTER)
 (INDEX_CALLBACKS_SIZE :UNSIGNED-INT) (INDEX_OPTIONS :UNSIGNED-INT)
 (ARG5 :POINTER))
(CFFI:DEFCFUN
 ("clang_indexLoc_getFileLocation"
  COM.OGAMITA.CLANG:INDEX-LOC-GET-FILE-LOCATION)
 :VOID (LOC COM.OGAMITA.CLANG:IDX-LOC) (|indexFile| :POINTER) (FILE :POINTER)
 (LINE :POINTER) (COLUMN :POINTER) (OFFSET :POINTER))
(CFFI:DEFCFUN
 ("clang_indexLoc_getCXSourceLocation"
  COM.OGAMITA.CLANG:INDEX-LOC-GET-CXSOURCE-LOCATION)
 COM.OGAMITA.CLANG:SOURCE-LOCATION (LOC COM.OGAMITA.CLANG:IDX-LOC))
ViewGit