Class: DropboxApi::Metadata::Base
- Inherits:
-
Object
- Object
- DropboxApi::Metadata::Base
- Defined in:
- lib/dropbox_api/metadata/base.rb
Direct Known Subclasses
BasicAccount, Deleted, File, FileLink, Folder, FolderLink, FolderSharingInfo, LinkPermissions, Name, SharedFolder, SharedFolderPolicy, Team, TeamMemberInfo
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(metadata) ⇒ Base
constructor
A new instance of Base.
Constructor Details
#initialize(metadata) ⇒ Base
Returns a new instance of Base.
16 17 18 19 20 |
# File 'lib/dropbox_api/metadata/base.rb', line 16 def initialize() self.class.each_field do |name, field| instance_variable_set "@#{name}", field.cast([name.to_s]) end end |
Class Method Details
.each_field ⇒ Object
10 11 12 13 14 |
# File 'lib/dropbox_api/metadata/base.rb', line 10 def self.each_field @fields.each do |name, field| yield name, field end end |
.field(name, type, *options) ⇒ Object
3 4 5 6 7 8 |
# File 'lib/dropbox_api/metadata/base.rb', line 3 def self.field(name, type, *) @fields ||= {} @fields[name] = DropboxApi::Metadata::Field.new(type, ) attr_reader name end |