@@ -35,6 +35,7 @@ pub struct InlayHintsConfig {
3535 pub parameter_hints : bool ,
3636 pub chaining_hints : bool ,
3737 pub adjustment_hints : AdjustmentHints ,
38+ pub adjustment_hints_mode : AdjustmentHintsMode ,
3839 pub adjustment_hints_hide_outside_unsafe : bool ,
3940 pub closure_return_type_hints : ClosureReturnTypeHints ,
4041 pub binding_mode_hints : bool ,
@@ -74,6 +75,14 @@ pub enum AdjustmentHints {
7475 Never ,
7576}
7677
78+ #[ derive( Copy , Clone , Debug , PartialEq , Eq ) ]
79+ pub enum AdjustmentHintsMode {
80+ Prefix ,
81+ Postfix ,
82+ PreferPrefix ,
83+ PreferPostfix ,
84+ }
85+
7786#[ derive( Clone , Debug , PartialEq , Eq ) ]
7887pub enum InlayKind {
7988 BindingModeHint ,
@@ -82,6 +91,7 @@ pub enum InlayKind {
8291 ClosureReturnTypeHint ,
8392 GenericParamListHint ,
8493 AdjustmentHint ,
94+ AdjustmentHintPostfix ,
8595 LifetimeHint ,
8696 ParameterHint ,
8797 TypeHint ,
@@ -430,7 +440,7 @@ mod tests {
430440 use itertools:: Itertools ;
431441 use test_utils:: extract_annotations;
432442
433- use crate :: inlay_hints:: AdjustmentHints ;
443+ use crate :: inlay_hints:: { AdjustmentHints , AdjustmentHintsMode } ;
434444 use crate :: DiscriminantHints ;
435445 use crate :: { fixture, inlay_hints:: InlayHintsConfig , LifetimeElisionHints } ;
436446
@@ -446,6 +456,7 @@ mod tests {
446456 lifetime_elision_hints : LifetimeElisionHints :: Never ,
447457 closure_return_type_hints : ClosureReturnTypeHints :: Never ,
448458 adjustment_hints : AdjustmentHints :: Never ,
459+ adjustment_hints_mode : AdjustmentHintsMode :: Prefix ,
449460 adjustment_hints_hide_outside_unsafe : false ,
450461 binding_mode_hints : false ,
451462 hide_named_constructor_hints : false ,
0 commit comments