Module: Rod

Defined in:
lib/rod/exception.rb,
lib/rod/cache.rb,
lib/rod/model.rb,
lib/rod/utils.rb,
lib/rod/database.rb,
lib/rod/constants.rb,
lib/rod/index/base.rb,
lib/rod/join_element.rb,
lib/rod/property/base.rb,
lib/rod/abstract_model.rb,
lib/rod/property/field.rb,
lib/rod/string_element.rb,
lib/rod/collection_proxy.rb,
lib/rod/index/flat_index.rb,
lib/rod/index/hash_index.rb,
lib/rod/abstract_database.rb,
lib/rod/berkeley/database.rb,
lib/rod/berkeley/sequence.rb,
lib/rod/reference_updater.rb,
lib/rod/berkeley/environment.rb,
lib/rod/berkeley/transaction.rb,
lib/rod/index/segmented_index.rb,
lib/rod/berkeley/collection_proxy.rb,
lib/rod/property/plural_association.rb,
lib/rod/property/singular_association.rb

Overview

Exceptions defined by the library.

Defined Under Namespace

Modules: Berkeley, Index, Property, Utils Classes: AbstractDatabase, AbstractModel, Cache, CollectionProxy, Database, DatabaseError, IdException, IncompatibleVersion, InvalidArgument, JoinElement, KeyMissing, MissingDatabase, Model, PolymorphicJoinElement, ReferenceUpdater, RodException, StringElement, ValidationException

Constant Summary collapse

VERSION =
"0.7.4.0"
DATABASE_FILE =

The name of file containing the data base.

"database.yml"
INVALID_NAMES =

Invalid names of fields.

{"rod_id" => true}
TYPE_MAPPING =
{
  :string => 'char *',
  :integer => 'long',
  :float => 'double',
  :ulong => 'unsigned long',
  :object => 'char *',
  :json => 'char *'
}
RUBY_TO_C_MAPPING =
{
  :string => 'StringValuePtr',
  :integer => 'NUM2LONG',
  :float => 'NUM2DBL',
  :ulong => 'NUM2ULONG'
}
C_TO_RUBY_MAPPING =
{
  :string => 'rb_str_new2',
  :integer => 'INT2NUM',
  :float => 'rb_float_new',
  :ulong => 'ULONG2NUM'
}
INLINE_PATTERN_RE =
/\h+\.\w+$/
LEGACY_DATA_SUFFIX =
".old"
NEW_DATA_SUFFIX =
".new"
LEGACY_MODULE =
"Legacy"
LEGACY_RE =
/^#{LEGACY_MODULE}::/
BACKUP_PREFIX =
"backup/"