class RDoc::Markup::AttrSpan
An array of attributes which parallels the characters in a string.
Public Class Methods
new(length, exclusive)
click to toggle source
Creates a new AttrSpan
for length
characters
# File rdoc/markup/attr_span.rb, line 10 def initialize(length, exclusive) @attrs = Array.new(length, 0) @exclusive = exclusive end
Public Instance Methods
[](n)
click to toggle source
Accesses flags for character n
# File rdoc/markup/attr_span.rb, line 31 def [](n) @attrs[n] end
set_attrs(start, length, bits)
click to toggle source
Toggles bits
from start
to length
# File rdoc/markup/attr_span.rb, line 17 def set_attrs(start, length, bits) updated = false for i in start ... (start+length) if (@exclusive & @attrs[i]) == 0 || (@exclusive & bits) != 0 @attrs[i] |= bits updated = true end end updated end