# Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE file.

# Config file for generating the libclang bindings used by this package.

# ===================== GENERATING BINDINGS =====================
#    cd to `tool`, and run -
#    dart ../bin/generate.dart --config libclang_config.yaml
# ===============================================================

output: '../lib/src/header_parser/clang_bindings/clang_bindings.dart'
libclang-dylib-folder: 'wrapped_libclang'
sort: true
compiler-opts: '-I/usr/lib/llvm-9/include/ -I/usr/lib/llvm-10/include/ -I/usr/local/opt/llvm/include/ -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/'
headers:
  - 'wrapped_libclang/wrapper.c'
header-filter:
  include:
    - wrapper.c
    - Index.h
    - CXString.h

enums:
  include:
    names:
      - CXChildVisitResult
      - CXCursorKind
      - CXTypeKind
      - CXDiagnosticDisplayOptions
      - CXTranslationUnit_Flags

structs:
  include:
    names:
      - CXCursor
      - CXType

functions:
  include:
    names:
      - clang_createIndex
      - clang_disposeIndex
      - clang_getNumDiagnostics
      - clang_getDiagnostic
      - clang_disposeDiagnostic
      - clang_parseTranslationUnit
      - clang_disposeTranslationUnit
      - clang_getCString_wrap
      - clang_disposeString_wrap
      - clang_getCursorKind_wrap
      - clang_getCursorKindSpelling_wrap
      - clang_getCursorType_wrap
      - clang_getTypeSpelling_wrap
      - clang_getTypeKindSpelling_wrap
      - clang_getResultType_wrap
      - clang_getPointeeType_wrap
      - clang_getCanonicalType_wrap
      - clang_Type_getNamedType_wrap
      - clang_getTypeDeclaration_wrap
      - clang_getTypedefDeclUnderlyingType_wrap
      - clang_getCursorSpelling_wrap
      - clang_getTranslationUnitCursor_wrap
      - clang_formatDiagnostic_wrap
      - clang_visitChildren_wrap
      - clang_Cursor_getNumArguments_wrap
      - clang_Cursor_getArgument_wrap
      - clang_getNumArgTypes_wrap
      - clang_getArgType_wrap
      - clang_getEnumConstantDeclValue_wrap
      - clang_Cursor_getBriefCommentText_wrap
      - clang_getCursorLocation_wrap
      - clang_getFileLocation_wrap
      - clang_getFileName_wrap
      - clang_getNumElements_wrap
      - clang_getArrayElementType_wrap
