diff options
Diffstat (limited to 'lib/rdoc/markup/attr_span.rb')
-rw-r--r-- | lib/rdoc/markup/attr_span.rb | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/lib/rdoc/markup/attr_span.rb b/lib/rdoc/markup/attr_span.rb new file mode 100644 index 0000000000..b5c1b3b7b7 --- /dev/null +++ b/lib/rdoc/markup/attr_span.rb @@ -0,0 +1,29 @@ +## +# An array of attributes which parallels the characters in a string. + +class RDoc::Markup::AttrSpan + + ## + # Creates a new AttrSpan for +length+ characters + + def initialize(length) + @attrs = Array.new(length, 0) + end + + ## + # Toggles +bits+ from +start+ to +length+ + def set_attrs(start, length, bits) + for i in start ... (start+length) + @attrs[i] |= bits + end + end + + ## + # Accesses flags for character +n+ + + def [](n) + @attrs[n] + end + +end + |