Module: FFI::Clang

Defined in:
lib/ffi/clang/version.rb,
lib/ffi/clang/lib.rb,
lib/ffi/clang/file.rb,
lib/ffi/clang/error.rb,
lib/ffi/clang/index.rb,
lib/ffi/clang/token.rb,
lib/ffi/clang/cursor.rb,
lib/ffi/clang/comment.rb,
lib/ffi/clang/lib/file.rb,
lib/ffi/clang/lib/type.rb,
lib/ffi/clang/platform.rb,
lib/ffi/clang/lib/index.rb,
lib/ffi/clang/lib/token.rb,
lib/ffi/clang/diagnostic.rb,
lib/ffi/clang/lib/cursor.rb,
lib/ffi/clang/lib/string.rb,
lib/ffi/clang/types/type.rb,
lib/ffi/clang/lib/comment.rb,
lib/ffi/clang/types/array.rb,
lib/ffi/clang/source_range.rb,
lib/ffi/clang/types/record.rb,
lib/ffi/clang/types/vector.rb,
lib/ffi/clang/unsaved_file.rb,
lib/ffi/clang/clang_version.rb,
lib/ffi/clang/types/pointer.rb,
lib/ffi/clang/lib/diagnostic.rb,
lib/ffi/clang/lib/inclusions.rb,
lib/ffi/clang/types/function.rb,
lib/ffi/clang/types/type_def.rb,
lib/ffi/clang/code_completion.rb,
lib/ffi/clang/printing_policy.rb,
lib/ffi/clang/source_location.rb,
lib/ffi/clang/lib/source_range.rb,
lib/ffi/clang/translation_unit.rb,
lib/ffi/clang/types/elaborated.rb,
lib/ffi/clang/lib/clang_version.rb,
lib/ffi/clang/lib/code_completion.rb,
lib/ffi/clang/lib/printing_policy.rb,
lib/ffi/clang/lib/source_location.rb,
lib/ffi/clang/compilation_database.rb,
lib/ffi/clang/lib/translation_unit.rb,
lib/ffi/clang/lib/compilation_database.rb

Defined Under Namespace

Modules: Lib, Types Classes: BlockCommandComment, CodeCompletion, Comment, CompilationDatabase, Cursor, Diagnostic, Error, ExpansionLocation, File, FileLocation, FullComment, HTMLEndTagComment, HTMLStartTagComment, HTMLTagComment, Index, InlineCommandComment, ParagraphComment, ParamCommandComment, PresumedLocation, PrintingPolicy, SourceLocation, SourceRange, SpellingLocation, TParamCommandComment, TextComment, Token, Tokens, TranslationUnit, UnsavedFile, VerbatimBlockCommandComment, VerbatimBlockLineComment, VerbatimLine

Constant Summary collapse

VERSION =
"0.14.0"

Class Method Summary collapse

Class Method Details

.clang_versionObject

Get the libclang version as a Gem::Version object.



19
20
21
22
# File 'lib/ffi/clang/clang_version.rb', line 19

def self.clang_version
	clang_version = self.clang_version_string.match(/\d+\.\d+\.\d+/)
	Gem::Version.new(clang_version)
end

.clang_version_stringObject

Get the version string of the libclang library.



13
14
15
# File 'lib/ffi/clang/clang_version.rb', line 13

def self.clang_version_string
	Lib.extract_string Lib.get_clang_version
end

.platformObject

Get the current platform identifier.



12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/ffi/clang/platform.rb', line 12

def self.platform
	case RUBY_PLATFORM
	when /darwin/
		:darwin
	when /linux/
		:linux
	when /mswin|msys|mingw|cygwin|bccwin|wince|emc/
		:windows
	else
		RUBY_PLATFORM.split("-").last
	end
end