Sha256: 4b0c80f216ec11828c28cf53dfacfa1cbe2dc8e3f2d12bb874d44c10a8231949

Contents?: true

Size: 740 Bytes

Versions: 4

Compression:

Stored size: 740 Bytes

Contents

require 'digest/md5'
require 'uri/common'

# A chunk is a pattern of text that can be protected
# and interrogated by a renderer. Each Chunk class has a 
# +pattern+ that states what sort of text it matches.
# Chunks are initalized by passing in the result of a
# match by its pattern. 
module Chunk
  class Abstract
	attr_reader :text, :revision

	def initialize(match_data, revision) @text = match_data[0]; @revision = revision end
	def pre_mask() "chunk#{self.object_id}start " end
	def post_mask() " chunk#{self.object_id}end" end
	def mask(content) "chunk#{self.object_id}chunk" end
	def revert(content) content.sub!( Regexp.new(mask(content)), text ) end
	def unmask(content) self if revert(content) end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
Pimki-1.4.092 app/models/chunks/chunk.rb
Pimki-1.5.092 app/models/chunks/chunk.rb
Pimki-1.6.092 app/models/chunks/chunk.rb
Pimki-1.7.092 app/models/chunks/chunk.rb