lib/nanoc/base/entities/document.rb in nanoc-4.8.12 vs lib/nanoc/base/entities/document.rb in nanoc-4.8.13
- old
+ new
@@ -5,11 +5,11 @@
# @api private
class Document
include Nanoc::Int::ContractsSupport
# @return [Nanoc::Int::Content]
- attr_accessor :content
+ attr_reader :content
# @return [Hash]
def attributes
@attributes.value
end
@@ -82,9 +82,24 @@
end
contract C::Or[Nanoc::Identifier, String] => Nanoc::Identifier
def identifier=(new_identifier)
@identifier = Nanoc::Identifier.from(new_identifier)
+ end
+
+ contract Nanoc::Int::Content => C::Any
+ def content=(new_content)
+ @content = new_content
+
+ @checksum_data = nil
+ @content_checksum_data = nil
+ end
+
+ def set_attribute(key, value)
+ attributes[key] = value
+
+ @checksum_data = nil
+ @attributes_checksum_data = nil
end
contract C::None => String
def inspect
"<#{self.class} identifier=\"#{identifier}\">"