Sha256: a1cf51913cf3fb1d19bbbfa2046b1cd4b211755e25092a58b84828bf17a6028c
Contents?: true
Size: 671 Bytes
Versions: 14
Compression:
Stored size: 671 Bytes
Contents
# frozen_string_literal: true ## # 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, exclusive) @attrs = Array.new(length, 0) @exclusive = exclusive end ## # Toggles +bits+ from +start+ to +length+ 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 ## # Accesses flags for character +n+ def [](n) @attrs[n] end end
Version data entries
14 entries across 14 versions & 5 rubygems