Class: CloudConvert::Base
- Inherits:
-
Object
- Object
- CloudConvert::Base
- Extended by:
- Forwardable
- Includes:
- Memoizable
- Defined in:
- lib/cloudconvert/base.rb
Direct Known Subclasses
Instance Attribute Summary collapse
- #attrs ⇒ Hash (also: #to_h) readonly
Class Method Summary collapse
-
.attr_reader(*attrs) ⇒ Object
Define methods that retrieve the value from attributes.
-
.collection_attr_reader(klass, *attrs) ⇒ Object
Define collection methods from attributes.
-
.object_attr_reader(klass, *attrs) ⇒ Object
Define object methods from attributes.
-
.predicate_attr_reader(*attrs) ⇒ Object
Define predicate methods from attributes.
-
.struct_attr_reader(*attrs) ⇒ Object
Define struct methods from attributes.
-
.symbol_attr_reader(*attrs) ⇒ Object
Define symbol methods from attributes.
-
.time_attr_reader(*attrs) ⇒ Object
Define time methods from attributes.
Instance Method Summary collapse
-
#initialize(attrs = {}) ⇒ CloudConvert::Base
constructor
Initializes a new object.
Constructor Details
#initialize(attrs = {}) ⇒ CloudConvert::Base
Initializes a new object
163 164 165 |
# File 'lib/cloudconvert/base.rb', line 163 def initialize(attrs = {}) @attrs = attrs || {} end |
Instance Attribute Details
#attrs ⇒ Hash (readonly) Also known as: to_h
6 7 8 |
# File 'lib/cloudconvert/base.rb', line 6 def attrs @attrs end |
Class Method Details
.attr_reader(*attrs) ⇒ Object
Define methods that retrieve the value from attributes
14 15 16 17 18 19 |
# File 'lib/cloudconvert/base.rb', line 14 def attr_reader(*attrs) attrs.each do |attr| define_attribute_method(attr) define_predicate_method(attr) end end |
.collection_attr_reader(klass, *attrs) ⇒ Object
Define collection methods from attributes
25 26 27 28 29 30 |
# File 'lib/cloudconvert/base.rb', line 25 def collection_attr_reader(klass, *attrs) attrs.each do |attr| define_collection_method(attr, klass) define_predicate_method(attr) end end |
.object_attr_reader(klass, *attrs) ⇒ Object
Define object methods from attributes
36 37 38 39 40 41 |
# File 'lib/cloudconvert/base.rb', line 36 def object_attr_reader(klass, *attrs) attrs.each do |attr| define_object_method(attr, klass) define_predicate_method(attr) end end |
.predicate_attr_reader(*attrs) ⇒ Object
Define predicate methods from attributes
46 47 48 49 50 |
# File 'lib/cloudconvert/base.rb', line 46 def predicate_attr_reader(*attrs) attrs.each do |attr| define_predicate_method(attr) end end |
.struct_attr_reader(*attrs) ⇒ Object
Define struct methods from attributes
55 56 57 58 59 60 |
# File 'lib/cloudconvert/base.rb', line 55 def struct_attr_reader(*attrs) attrs.each do |attr| define_struct_method(attr) define_predicate_method(attr) end end |
.symbol_attr_reader(*attrs) ⇒ Object
Define symbol methods from attributes
65 66 67 68 69 |
# File 'lib/cloudconvert/base.rb', line 65 def symbol_attr_reader(*attrs) attrs.each do |attr| define_symbol_method(attr) end end |
.time_attr_reader(*attrs) ⇒ Object
Define time methods from attributes
74 75 76 77 78 79 |
# File 'lib/cloudconvert/base.rb', line 74 def time_attr_reader(*attrs) attrs.each do |attr| define_time_method(attr) define_predicate_method(attr.to_s.gsub(/_at$/, ""), attr) end end |