In Files

  • rdoc/template.rb


Class/Module Index [+]



A context holds a stack of key/value pairs (like a symbol table). When asked to resolve a key, it first searches the top of the stack, then the next level, and so on until it finds a match (or runs out of entries)

Public Class Methods

new() click to toggle source
               # File rdoc/template.rb, line 47
def initialize
  @stack = []

Public Instance Methods

find_scalar(key) click to toggle source

Find a scalar value, throwing an exception if not found. This method is used when substituting the %xxx% constructs

               # File rdoc/template.rb, line 62
def find_scalar(key)
  @stack.reverse_each do |level|
    if val = level[key]
      return val unless val.kind_of? Array
  raise "Template error: can't find variable '#{key}'"
lookup(key) click to toggle source

Lookup any key in the stack of hashes

               # File rdoc/template.rb, line 73
def lookup(key)
  @stack.reverse_each do |level|
    val = level[key]
    return val if val
pop() click to toggle source
               # File rdoc/template.rb, line 55
def pop
push(hash) click to toggle source
               # File rdoc/template.rb, line 51
def push(hash)

Commenting is here to help enhance the documentation. For example, code samples, or clarification of the documentation.

If you have questions about Ruby or the documentation, please post to one of the Ruby mailing lists. You will get better, faster, help that way.

If you wish to post a correction of the docs, please do so, but also file bug report so that it can be corrected for the next release. Thank you.

If you want to help improve the Ruby documentation, please visit