Class Kwartz::AttrInfo
In: kwartz/converter.rb
Parent: Object

Methods

[]   []=   delete   each   empty?   new  

Attributes

directive  [RW] 
linenum  [RW] 
names  [R] 
spaces  [R] 
values  [R] 

Public Class methods

[Source]

# File kwartz/converter.rb, line 98
    def initialize(attr_str)
      @names  = []
      @values = {}
      @spaces = {}
      attr_str.scan(/(\s+)([-:_\w]+)="([^"]*?)"/) do |space, name, value|
        @names << name unless @values.key?(name)
        @values[name] = value
        @spaces[name] = space
      end
      @directive = nil
      @linenum = nil
    end

Public Instance methods

[Source]

# File kwartz/converter.rb, line 114
    def [](name)
      @values[name]
    end

[Source]

# File kwartz/converter.rb, line 119
    def []=(name, value)
      @names << name unless @values.key?(name)
      @values[name] = value
      @spaces[name] = ' ' unless @spaces.key?(name)
    end

[Source]

# File kwartz/converter.rb, line 135
    def delete(name)
      if @values.key?(name)
        @names.delete(name)
        @values.delete(name)
        @spaces.delete(name)
      end
    end

[Source]

# File kwartz/converter.rb, line 126
    def each
      @names.each do |name|
        space = @spaces[name]
        value = @values[name]
        yield(space, name, value)
      end
    end

[Source]

# File kwartz/converter.rb, line 144
    def empty?
      return @names.empty?
    end

[Validate]