public static extern CXTranslationUnitImpl *clang_createTranslationUnitFromSourceFile(
     CXIndexImpl *CIdx,
     sbyte *source_filename,
     int num_clang_command_line_args,
     sbyte **clang_command_line_args,
     uint num_unsaved_files,
     CXUnsavedFile *unsaved_files);
 public static extern CXTranslationUnitImpl *clang_parseTranslationUnit(
     CXIndexImpl *CIdx,
     sbyte *source_filename,
     sbyte **command_line_args,
     int num_command_line_args,
     CXUnsavedFile *unsaved_files,
     uint num_unsaved_files,
     uint options);
 public static extern CXCodeCompleteResults *clang_codeCompleteAt(
     CXTranslationUnitImpl *TU,
     sbyte *complete_filename,
     uint complete_line,
     uint complete_column,
     CXUnsavedFile *unsaved_files,
     uint num_unsaved_files,
     uint options);
 public static extern CXErrorCode clang_parseTranslationUnit2FullArgv(
     CXIndexImpl *CIdx,
     sbyte *source_filename,
     sbyte **command_line_args,
     int num_command_line_args,
     CXUnsavedFile *unsaved_files,
     uint num_unsaved_files,
     uint options,
     CXTranslationUnitImpl **out_TU);
 public static extern int clang_indexSourceFileFullArgv(
     CXIndexActionImpl *arg1,
     CXClientDataImpl *client_data,
     IndexerCallbacks *index_callbacks,
     uint index_callbacks_size,
     uint index_options,
     sbyte *source_filename,
     sbyte **command_line_args,
     int num_command_line_args,
     CXUnsavedFile *unsaved_files,
     uint num_unsaved_files,
     CXTranslationUnitImpl **out_TU,
     uint TU_options);
 public static extern int clang_reparseTranslationUnit(
     CXTranslationUnitImpl *TU,
     uint num_unsaved_files,
     CXUnsavedFile *unsaved_files,
     uint options);