Class: LC::Pointer
- Inherits:
-
Object
- Object
- LC::Pointer
- Defined in:
- lib/leancloud/datatypes.rb
Overview
Pointer
Instance Attribute Summary collapse
-
#class_name ⇒ Object
Returns the value of attribute class_name.
-
#parse_object_id ⇒ Object
(also: #id)
Returns the value of attribute parse_object_id.
Class Method Summary collapse
Instance Method Summary collapse
- #eql?(other) ⇒ Boolean (also: #==)
-
#get ⇒ Object
Retrieve the Parse object referenced by this pointer.
- #hash ⇒ Object
-
#initialize(data) ⇒ Pointer
constructor
A new instance of Pointer.
- #new? ⇒ Boolean
-
#pointer ⇒ Object
make it easier to deal with the ambiguity of whether you’re passed a pointer or object.
- #to_h(*a) ⇒ Object (also: #as_json)
- #to_json(*a) ⇒ Object
- #to_s ⇒ Object
Constructor Details
#initialize(data) ⇒ Pointer
Returns a new instance of Pointer.
23 24 25 26 |
# File 'lib/leancloud/datatypes.rb', line 23 def initialize(data) @class_name = data[Protocol::KEY_CLASS_NAME] @parse_object_id = data[Protocol::KEY_OBJECT_ID] end |
Instance Attribute Details
#class_name ⇒ Object
Returns the value of attribute class_name.
13 14 15 |
# File 'lib/leancloud/datatypes.rb', line 13 def class_name @class_name end |
#parse_object_id ⇒ Object Also known as: id
Returns the value of attribute parse_object_id.
12 13 14 |
# File 'lib/leancloud/datatypes.rb', line 12 def parse_object_id @parse_object_id end |
Class Method Details
.make(class_name, object_id) ⇒ Object
16 17 18 19 20 21 |
# File 'lib/leancloud/datatypes.rb', line 16 def self.make(class_name, object_id) Pointer.new( Protocol::KEY_CLASS_NAME => class_name, Protocol::KEY_OBJECT_ID => object_id ) end |
Instance Method Details
#eql?(other) ⇒ Boolean Also known as: ==
33 34 35 |
# File 'lib/leancloud/datatypes.rb', line 33 def eql?(other) LC.object_pointer_equality?(self, other) end |
#get ⇒ Object
Retrieve the Parse object referenced by this pointer.
61 62 63 |
# File 'lib/leancloud/datatypes.rb', line 61 def get LC.get @class_name, @parse_object_id if @parse_object_id end |
#hash ⇒ Object
39 40 41 |
# File 'lib/leancloud/datatypes.rb', line 39 def hash LC.object_pointer_hash(self) end |
#new? ⇒ Boolean
43 44 45 |
# File 'lib/leancloud/datatypes.rb', line 43 def new? false end |
#pointer ⇒ Object
make it easier to deal with the ambiguity of whether you’re passed a pointer or object
29 30 31 |
# File 'lib/leancloud/datatypes.rb', line 29 def pointer self end |
#to_h(*a) ⇒ Object Also known as: as_json
47 48 49 50 51 52 53 |
# File 'lib/leancloud/datatypes.rb', line 47 def to_h(*a) { Protocol::KEY_TYPE => Protocol::TYPE_POINTER, Protocol::KEY_CLASS_NAME => @class_name, Protocol::KEY_OBJECT_ID => @parse_object_id } end |
#to_json(*a) ⇒ Object
56 57 58 |
# File 'lib/leancloud/datatypes.rb', line 56 def to_json(*a) to_h.to_json(*a) end |
#to_s ⇒ Object
65 66 67 |
# File 'lib/leancloud/datatypes.rb', line 65 def to_s "#{@class_name}:#{@parse_object_id}" end |