Class: ThePlaidApi::SellType
- Defined in:
- lib/the_plaid_api/models/sell_type.rb
Overview
Selling an investment
Instance Attribute Summary collapse
-
#distribution ⇒ String
Outflow of assets from a tax-advantaged account.
-
#exercise ⇒ String
Exercise of an option or warrant contract.
-
#sell ⇒ String
Sell to close or decrease an existing holding.
-
#sell_short ⇒ String
Sell to open a short position.
Class Method Summary collapse
-
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
-
.names ⇒ Object
A mapping from model property names to API property names.
-
.nullables ⇒ Object
An array for nullable fields.
-
.optionals ⇒ Object
An array for optional fields.
Instance Method Summary collapse
-
#initialize(distribution: SKIP, exercise: SKIP, sell: SKIP, sell_short: SKIP, additional_properties: nil) ⇒ SellType
constructor
A new instance of SellType.
-
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
-
#to_s ⇒ Object
Provides a human-readable string representation of the object.
Methods inherited from BaseModel
#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json
Constructor Details
#initialize(distribution: SKIP, exercise: SKIP, sell: SKIP, sell_short: SKIP, additional_properties: nil) ⇒ SellType
Returns a new instance of SellType.
53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/the_plaid_api/models/sell_type.rb', line 53 def initialize(distribution: SKIP, exercise: SKIP, sell: SKIP, sell_short: SKIP, additional_properties: nil) # Add additional model properties to the instance additional_properties = {} if additional_properties.nil? @distribution = distribution unless distribution == SKIP @exercise = exercise unless exercise == SKIP @sell = sell unless sell == SKIP @sell_short = sell_short unless sell_short == SKIP @additional_properties = additional_properties end |
Instance Attribute Details
#distribution ⇒ String
Outflow of assets from a tax-advantaged account
14 15 16 |
# File 'lib/the_plaid_api/models/sell_type.rb', line 14 def distribution @distribution end |
#exercise ⇒ String
Exercise of an option or warrant contract
18 19 20 |
# File 'lib/the_plaid_api/models/sell_type.rb', line 18 def exercise @exercise end |
#sell ⇒ String
Sell to close or decrease an existing holding
22 23 24 |
# File 'lib/the_plaid_api/models/sell_type.rb', line 22 def sell @sell end |
#sell_short ⇒ String
Sell to open a short position
26 27 28 |
# File 'lib/the_plaid_api/models/sell_type.rb', line 26 def sell_short @sell_short end |
Class Method Details
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/the_plaid_api/models/sell_type.rb', line 66 def self.from_hash(hash) return nil unless hash # Extract variables from the hash. distribution = hash.key?('distribution') ? hash['distribution'] : SKIP exercise = hash.key?('exercise') ? hash['exercise'] : SKIP sell = hash.key?('sell') ? hash['sell'] : SKIP sell_short = hash.key?('sell short') ? hash['sell short'] : SKIP # Create a new hash for additional properties, removing known properties. new_hash = hash.reject { |k, _| names.value?(k) } additional_properties = APIHelper.get_additional_properties( new_hash, proc { |value| value } ) # Create object from extracted values. SellType.new(distribution: distribution, exercise: exercise, sell: sell, sell_short: sell_short, additional_properties: additional_properties) end |
.names ⇒ Object
A mapping from model property names to API property names.
29 30 31 32 33 34 35 36 |
# File 'lib/the_plaid_api/models/sell_type.rb', line 29 def self.names @_hash = {} if @_hash.nil? @_hash['distribution'] = 'distribution' @_hash['exercise'] = 'exercise' @_hash['sell'] = 'sell' @_hash['sell_short'] = 'sell short' @_hash end |
.nullables ⇒ Object
An array for nullable fields
49 50 51 |
# File 'lib/the_plaid_api/models/sell_type.rb', line 49 def self.nullables [] end |
.optionals ⇒ Object
An array for optional fields
39 40 41 42 43 44 45 46 |
# File 'lib/the_plaid_api/models/sell_type.rb', line 39 def self.optionals %w[ distribution exercise sell sell_short ] end |
Instance Method Details
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
98 99 100 101 102 103 |
# File 'lib/the_plaid_api/models/sell_type.rb', line 98 def inspect class_name = self.class.name.split('::').last "<#{class_name} distribution: #{@distribution.inspect}, exercise: #{@exercise.inspect},"\ " sell: #{@sell.inspect}, sell_short: #{@sell_short.inspect}, additional_properties:"\ " #{@additional_properties}>" end |
#to_s ⇒ Object
Provides a human-readable string representation of the object.
91 92 93 94 95 |
# File 'lib/the_plaid_api/models/sell_type.rb', line 91 def to_s class_name = self.class.name.split('::').last "<#{class_name} distribution: #{@distribution}, exercise: #{@exercise}, sell: #{@sell},"\ " sell_short: #{@sell_short}, additional_properties: #{@additional_properties}>" end |