You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.
Class: Seahorse::Model::Shapes::StructureShape
- Inherits:
-
Shape
- Object
- Shape
- Seahorse::Model::Shapes::StructureShape
show all
- Defined in:
- aws-sdk-core/lib/seahorse/model/shapes.rb
Instance Attribute Summary collapse
Attributes inherited from Shape
#documentation, #name
Instance Method Summary
collapse
Methods inherited from Shape
#[], #[]=
Constructor Details
Returns a new instance of StructureShape.
170
171
172
173
174
175
|
# File 'aws-sdk-core/lib/seahorse/model/shapes.rb', line 170
def initialize(options = {})
@members = {}
@members_by_location_name = {}
@required = Set.new
super()
end
|
Instance Attribute Details
#required ⇒ Set<Symbol>
178
179
180
|
# File 'aws-sdk-core/lib/seahorse/model/shapes.rb', line 178
def required
@required
end
|
Instance Method Details
#add_member(name, shape_ref) ⇒ Object
182
183
184
185
186
187
|
# File 'aws-sdk-core/lib/seahorse/model/shapes.rb', line 182
def add_member(name, shape_ref)
name = name.to_sym
@required << name if shape_ref.required
@members_by_location_name[shape_ref.location_name] = [name, shape_ref]
@members[name] = shape_ref
end
|
208
209
210
211
212
213
214
|
# File 'aws-sdk-core/lib/seahorse/model/shapes.rb', line 208
def member(name)
if member?(name)
@members[name.to_sym]
else
raise ArgumentError, "no such member #{name.inspect}"
end
end
|
#member?(member_name) ⇒ Boolean
Returns true
if there exists a member with
the given name.
197
198
199
|
# File 'aws-sdk-core/lib/seahorse/model/shapes.rb', line 197
def member?(member_name)
@members.key?(member_name.to_sym)
end
|
#member_names ⇒ Array<Symbol>
190
191
192
|
# File 'aws-sdk-core/lib/seahorse/model/shapes.rb', line 190
def member_names
@members.keys
end
|
#members ⇒ Enumerator<[Symbol,ShapeRef]>
202
203
204
|
# File 'aws-sdk-core/lib/seahorse/model/shapes.rb', line 202
def members
@members.to_enum
end
|