-
Notifications
You must be signed in to change notification settings - Fork 125
Expand file tree
/
Copy pathfactory.rb
More file actions
68 lines (63 loc) · 1.99 KB
/
Copy pathfactory.rb
File metadata and controls
68 lines (63 loc) · 1.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
module MessagePack
#
# MessagePack::Factory is a class to generate Packer and Unpacker which has
# same set of ext types.
#
class Factory
#
# Creates a MessagePack::Factory instance
#
def initialize
end
#
# Creates a MessagePack::Packer instance, which has ext types already registered.
# Options are passed to MessagePack::Packer#initialized.
#
# See also Packer#initialize for options.
#
def packer(*args)
end
#
# Creates a MessagePack::Unpacker instance, which has ext types already registered.
# Options are passed to MessagePack::Unpacker#initialized.
#
# See also Unpacker#initialize for options.
#
def unpacker(*args)
end
#
# Register a type and Class to be registered for packer and/or unpacker.
# If options are not speicified, factory will use :to_msgpack_ext for packer, and
# :from_msgpack_ext for unpacker.
#
# @param type [Fixnum] type id of registered Class (0-127)
# @param klass [Class] Class to be associated with type id
# @param options [Hash] specify method name or Proc which are used by packer/unpacker
# @return nil
#
# Supported options:
#
# * *:packer* specify symbol or proc object for packer
# * *:unpacker* specify symbol or proc object for unpacker
#
def register_type(type, klass, options={})
end
#
# Returns a list of registered types, ordered by type id.
#
# @param selector [Symbol] specify to list types registered for :packer, :unpacker or :both (default)
# @return Array
#
def registered_types(selector=:both)
end
#
# Returns true/false which indicate specified class or type id is registered or not.
#
# @param klass_or_type [Class or Fixnum] Class or type id (0-127) to be checked
# @param selector [Symbol] specify to check for :packer, :unpacker or :both (default)
# @return true or false
#
def type_registered?(klass_or_type, selector=:both)
end
end
end