Sha256: 508ee294d37ea60430f0f87a4287c43fb4f0fc47320c43e50b3b176360417968

Contents?: true

Size: 686 Bytes

Versions: 4

Compression:

Stored size: 686 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}
  #
  # @api private
  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) # rubocop:disable Lint/UnusedMethodArgument
      raise NotImplementedError, 'Subclasses of Nanoc::CLI::StreamCleaners::Abstract must implement #clean'
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
nanoc-4.0.0b2 lib/nanoc/cli/stream_cleaners/abstract.rb
nanoc-4.0.0b1 lib/nanoc/cli/stream_cleaners/abstract.rb
nanoc-4.0.0a2 lib/nanoc/cli/stream_cleaners/abstract.rb
nanoc-4.0.0a1 lib/nanoc/cli/stream_cleaners/abstract.rb