class ProtoCat::ProtocolModule

Constants

Class

Attributes

protocol[R]

Public Class Methods

new(&block) click to toggle source
# File lib/proto_cat/protocol_module.rb, line 12
def initialize(&block)
  builder = ProtocolBuilder.new
  block.call(builder)
  @protocol = Protocol.new(self, builder.criteria)
end

Public Instance Methods

extended(obj) click to toggle source
# File lib/proto_cat/protocol_module.rb, line 22
def extended(obj)
  protocol.satisfied_by!(obj)
end
included(klass) click to toggle source
# File lib/proto_cat/protocol_module.rb, line 18
def included(klass)
  protocol.satisfied_by!(Class.new(klass))
end