Module: MessageFormat

Defined in:
lib/message_format/parser.rb,
lib/message_format.rb,
lib/message_format/version.rb,
lib/message_format/interpreter.rb

Overview

Interpreter

Turns this:

[ "You have ", [ "numBananas", "plural", 0, {
     "=0": [ "no bananas" ],
    "one": [ "a banana" ],
  "other": [ [ '#' ], " bananas" ]
} ], " for sale." ]

into this:

format({ numBananas:0 })
"You have no bananas for sale."

Defined Under Namespace

Classes: Interpreter, MessageFormat, Parser

Constant Summary collapse

VERSION =
"0.0.8"

Class Method Summary collapse

Class Method Details

.format_message(pattern, args = nil, locale = nil) ⇒ Object



29
30
31
32
33
34
35
# File 'lib/message_format.rb', line 29

def format_message ( pattern, args=nil, locale=nil )
  locale ||= TwitterCldr.locale
  Interpreter.interpret(
    Parser.parse(pattern),
    { :locale => locale.to_sym }
  ).call(args)
end

.new(pattern, locale = nil) ⇒ Object



25
26
27
# File 'lib/message_format.rb', line 25

def new ( pattern, locale=nil )
  MessageFormat.new(pattern, locale)
end