Sha256: 5a6f6556a0ba776538873d96e3846c0d881bf827d9934c5bed9b611c44c87029
Contents?: true
Size: 672 Bytes
Versions: 12
Compression:
Stored size: 672 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
12 entries across 12 versions & 3 rubygems