Sha256: ca73828c85653e095cfd45cac71b917b464bb31061c7669659a199596775a0ba

Contents?: true

Size: 625 Bytes

Versions: 8

Compression:

Stored size: 625 Bytes

Contents

# encoding: utf-8

module Nanoc::CLI::StreamCleaners

  # Superclass for all stream cleaners. Stream cleaners have a single method,
  # {#clean}, that takes a string and returns a cleaned string. Stream cleaners
  # can have state, so they can act as a FSM.
  #
  # @abstract Subclasses must implement {#clean}
  class Abstract

    # Returns a cleaned version of the given string.
    #
    # @param [String] s The string to clean
    #
    # @return [String] The cleaned string
    def clean(s)
      raise NotImplementedError, 'Subclasses of Nanoc::CLI::StreamCleaners::Abstract must implement #clean'
    end

  end

end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
nanoc-3.7.3 lib/nanoc/cli/stream_cleaners/abstract.rb
nanoc-3.7.2 lib/nanoc/cli/stream_cleaners/abstract.rb
nanoc-3.7.1 lib/nanoc/cli/stream_cleaners/abstract.rb
nanoc-3.7.0 lib/nanoc/cli/stream_cleaners/abstract.rb
nanoc-3.6.11 lib/nanoc/cli/stream_cleaners/abstract.rb
nanoc-3.6.10 lib/nanoc/cli/stream_cleaners/abstract.rb
nanoc-3.6.9 lib/nanoc/cli/stream_cleaners/abstract.rb
nanoc-3.6.8 lib/nanoc/cli/stream_cleaners/abstract.rb