ProtocolDefinitionTrait class
A trait that is attached to other traits to define a Smithy protocol.
- Implemented types
- Implementers
- Annotations
-
- @ShapeIdConverter()
- @JsonSerializable()
Constructors
-
ProtocolDefinitionTrait.new({List<
ShapeId> traits = const [], bool noInlineDocumentSupport = false}) -
const
- ProtocolDefinitionTrait.fromJson(Object? json)
-
factory
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- isSynthetic → bool
-
Checks if this trait is persisted with the shape, or if it is a synthetic,
or transient trait, only meant to temporarily aid in some kind of
in-memory model transformation.
no setteroverride
- noInlineDocumentSupport → bool
-
If set to
true
, indicates that this protocol does not supportdocument
type shapes. A service that uses such a protocol MUST NOT contain anydocument
shapes in their service closure.final -
props
→ List<
Object?> -
The type's equatable properties.
no setteroverride
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- shapeId → ShapeId
-
Returns the fully-qualified shape ID of the trait.
no setteroverride
-
traits
→ List<
ShapeId> -
List of shape IDs that protocol implementations MUST understand in order
to successfully use the protocol. Each shape MUST exist and MUST be a
trait. Code generators SHOULD ensure that they support each listed trait.
final
- value → ProtocolDefinitionTrait
-
The value of the trait.
no setteroverride
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toJson(
) → Map< String, Object?> -
Serializes
this
as a JSON object.override -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited