Module: JSGF

Defined in:
lib/jsgf.rb,
lib/jsgf/parser.rb,
lib/jsgf/builder.rb,
lib/jsgf/grammar.rb,
lib/jsgf/optional.rb,
lib/jsgf/tokenizer.rb,
lib/jsgf/repetition.rb,
lib/jsgf/alternation.rb

Overview

Examples:

grammar = JSGF.read(filename)

Defined Under Namespace

Classes: Alternation, Builder, Grammar, Optional, Parser, Repetition, Tokenizer

Class Method Summary collapse

Class Method Details

.grammar(name = nil, &block) ⇒ Grammar

Returns a new Grammar built from the block argument.

Returns:



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

def self.grammar(name=nil, &block)
	Builder.build(name, &block)
end

.read(filename) ⇒ Grammar

Returns the resulting Grammar.

Parameters:

  • filename (String)

    the file to parse

Returns:



19
20
21
22
# File 'lib/jsgf.rb', line 19

def self.read(filename)
	tokenzier = JSGF::Tokenizer.new(File.read(filename))
	JSGF::Parser.new(tokenzier).parse
end