Class

Property

Extends:

Includes:

Property stream format:

line separator is \r?\n.  1 line per a property.
line which begins with '#' is a comment line.  empty line is ignored, too.
key/value separator is ':' or '='.
'\' as escape character.  but line separator cannot be escaped.
\s at the head/tail of key/value are trimmed.

'[' + key + ']' indicates property section.  for example,

  [aaa.bbb]
  ccc = ddd
  eee.fff = ggg
  []
  aaa.hhh = iii

is the same as;

  aaa.bbb.ccc = ddd
  aaa.bbb.eee.fff = ggg
  aaa.hhh = iii
Modules
Util
Constants
CATDEF_REGEXP
COMMENT_REGEXP
DEF_REGSRC
FrozenError
KEY_REGSRC
LINE_REGEXP
NO_HOOK
Public Methods
<< value: an Object key is generated by property
[] name: a Symbol, String or an Array
[]= name: a Symbol, String or an Array value: an Object
add_hook name: a Symbol, String or an Array; nil means hook to the root cascade: true/false; for cascading hook of sub key hook: block which will be called with 2 args, name and value
each
empty?
keys
load
load
loadproperty find property from $:.
loadproperty
lock
locked?
new
unlock
values
Protected Methods
deref_key
local_assign
local_assign_hook
local_hook
local_referent
Private Methods
assign
assign_hook
assign_self_hook
check_lock
each_key
generate_new_key
key_max
loadpropertyfile
loadstr
name_to_a
propkey?
referent
to_key
Comments

Have your say
Please use Textile formatting (click here for a cheat sheet). Use <code/> and <pre/> for code samples.
Click here to login with OpenID to to post comments.