| Annotation Type | Description | 
|---|---|
| CreatesMustCallFor | Indicates that the method resets the expression's must-call type to its declared type. | 
| CreatesMustCallFor.List | A wrapper annotation that makes the  CreatesMustCallForannotation repeatable. | 
| InheritableMustCall | This annotation is an alias for  MustCallthat applies to the type on which it is written
 and all of its subtypes. | 
| MustCall | An expression of type  @MustCall({"m1", "m2"})may be obligated to callm1()and/orm2()before it is deallocated, but it is not obligated to call any other methods. | 
| MustCallAlias | This polymorphic annotation represents an either-or must-call obligation. | 
| MustCallUnknown | The top qualifier in the Must Call type hierarchy. | 
| NotOwning | Annotation indicating that ownership should not be transferred to the annotated parameter, field,
 or method's call sites, for the purposes of Must Call checking. | 
| Owning | Annotation indicating that ownership should be transferred to the annotated element for the
 purposes of Must Call checking. | 
| PolyMustCall | The polymorphic qualifier for the Must Call type system. |