public final class TraitDefinition extends AbstractTrait implements software.amazon.smithy.utils.ToSmithyBuilder<TraitDefinition>
| Modifier and Type | Class and Description |
|---|---|
static class |
TraitDefinition.BreakingChangeRule
Represents an individual trait diff rule to define backward compatibility rules.
|
static class |
TraitDefinition.Builder
Builder to create a TraitDefinition.
|
static class |
TraitDefinition.ChangeType |
static class |
TraitDefinition.Provider |
static class |
TraitDefinition.StructurallyExclusive
The structural exclusion semantics of the trait.
|
| Constructor and Description |
|---|
TraitDefinition(TraitDefinition.Builder builder) |
| Modifier and Type | Method and Description |
|---|---|
static TraitDefinition.Builder |
builder() |
protected Node |
createNode()
The result of toNode is used for hashCodes and equality.
|
boolean |
equals(java.lang.Object other) |
java.util.List<TraitDefinition.BreakingChangeRule> |
getBreakingChanges() |
java.util.List<ShapeId> |
getConflicts()
Gets the trait names that conflict with this trait.
|
Selector |
getSelector()
Gets the valid places in a model that this trait can be applied.
|
java.util.Optional<TraitDefinition.StructurallyExclusive> |
getStructurallyExclusive()
Gets the
structurallyExclusive property of the trait. |
int |
hashCode() |
boolean |
isStructurallyExclusiveByMember() |
boolean |
isStructurallyExclusiveByTarget() |
TraitDefinition.Builder |
toBuilder() |
getSourceLocation, setNodeCache, toNode, toShapeId, toStringclone, finalize, getClass, notify, notifyAll, wait, wait, waitflatMapStream, getIdiomaticTraitName, getIdiomaticTraitName, isSynthetic, makeAbsoluteName, makeAbsoluteNamecomparepublic static final ShapeId ID
public TraitDefinition(TraitDefinition.Builder builder)
public static TraitDefinition.Builder builder()
public TraitDefinition.Builder toBuilder()
toBuilder in interface software.amazon.smithy.utils.ToSmithyBuilder<TraitDefinition>public Selector getSelector()
public java.util.List<ShapeId> getConflicts()
public java.util.Optional<TraitDefinition.StructurallyExclusive> getStructurallyExclusive()
structurallyExclusive property of the trait.structurallyExclusive property of the trait.public boolean isStructurallyExclusiveByMember()
structurallyExclusive by member.public boolean isStructurallyExclusiveByTarget()
structurallyExclusive by target.public java.util.List<TraitDefinition.BreakingChangeRule> getBreakingChanges()
protected Node createNode()
AbstractTraitcreateNode in class AbstractTraitpublic boolean equals(java.lang.Object other)
equals in class AbstractTraitpublic int hashCode()
hashCode in class AbstractTrait