Class: Builder::XmlEvents

### Home Classes Methods

### In Files

- lib/builder/xmlevents.rb

### Parent

XmlMarkup

### Methods

- #_end_tag
- #_start_tag
- #text!

### Files

- CHANGES
- MIT-LICENSE
- Rakefile
- builder-1.2.4.rdoc
- builder-2.0.0.rdoc
- builder-2.1.1.rdoc

### Class/Module Index

Quicksearch

- Builder
- Builder::BlankSlate
- Builder::IllegalBlockError
- Builder::XmlBase
- Builder::XmlEvents
- Builder::XmlMarkup
- BlankSlate
- Fixnum
- Kernel
- Module
- Object
- String
- Symbol

No matching classes.

# Builder::XmlEvents

Create a series of SAX-like XML events (e.g. start_tag, end_tag) from the markup code. XmlEvent objects are used in a way similar to XmlMarkup objects, except that a series of events are generated and passed to a handler rather than generating character-based markup.

Usage:

    xe = Builder::XmlEvents.new(hander)
    xe.title("HI")    # Sends start_tag/end_tag/text messages to the handler.

Indentation may also be selected by providing value for the indentation size and initial indentation level.

    xe = Builder::XmlEvents.new(handler, indent_size, initial_indent_level)

## XML Event Handler

The handler object must expect the following events.

`start_tag(tag, attrs)`

  Announces that a new tag has been found. `tag` is the name of the tag and `attrs` is a hash of attributes for the tag.

`end_tag(tag)`

  Announces that an end tag for `tag` has been found.

`text(text)`

  Announces that a string of characters (`text`) has been found. A series of characters may be broken up into more than one `text` call, so the client cannot assume that a single callback contains all the text data.

### Public Instance Methods

_end_tag(sym) click to toggle source

    # File lib/builder/xmlevents.rb, line 58
    def _end_tag(sym)
      @target.end_tag(sym)
    end

_start_tag(sym, attrs, end_too=false) click to toggle source

    # File lib/builder/xmlevents.rb, line 53
    def _start_tag(sym, attrs, end_too=false)
      @target.start_tag(sym, attrs)
      _end_tag(sym) if end_too
    end

text!(text) click to toggle source

    # File lib/builder/xmlevents.rb, line 49
    def text!(text)
      @target.text(text)
    end

[Validate]

Generated with the Darkfish Rdoc Generator 2.