Module: Oinky::Internal
- Extended by:
- FFI::Library
- Defined in:
- lib/oinky.rb
Overview
All of the C library interface is hidden within this internal module. The clean object-oriented lifetime-managed interface is built above this.
Defined Under Namespace
Classes: ColumnDefn, CursorBase, DB_string, IndexColumnDefn, OinkyDateTime, OinkyUnpackedDateTime, Variant, VariantSet
Constant Summary
collapse
- NkyTypeCodes =
FFI::Enum.new([
:variant, 0,
:bit, 1,
:int8, 2,
:int16, 3,
:int32, 4,
:int64, 5,
:datetime, 6,
:string, 7,
:uint8, 8,
:uint16, 9,
:uint32, 10,
:uint64, 11,
:float32, 12,
:float64, 13
])
Class Method Summary
collapse
Class Method Details
.make_hash(src, keys) ⇒ Object
369
370
371
372
373
|
# File 'lib/oinky.rb', line 369
def self.make_hash(src, keys)
h = ExHash.new
keys.each {|k| h[k] = src[k] }
h
end
|
.prepare_pack(db) ⇒ Object
52
53
54
55
56
|
# File 'lib/oinky.rb', line 52
def self.prepare_pack(db)
res = FFI::MemoryPointer.new :size_t
wrap_oinky(oinky_db_prepare_pack(db, res))
res.read_int
end
|
.wrap_oinky(err) ⇒ Object
58
59
60
61
62
63
|
# File 'lib/oinky.rb', line 58
def self.wrap_oinky(err)
if err < 0
raise OinkyException.new(err, convert_oinky_error(err))
end
nil
end
|