@@ -37,17 +37,17 @@ public class InvokeFormatterCommand : PSCmdlet, IOutputWriter
3737 [ ValidateNotNull ]
3838 public object Settings { get ; set ; }
3939
40- // [Parameter(Mandatory = false)]
41- // public Range range { get; set; }
42-
4340 [ Parameter ( Mandatory = false ) ]
41+ public Range Range { get ; set ; }
42+
43+ [ Parameter ( Mandatory = false , ParameterSetName = "NoRange" ) ]
4444 public int StartLineNumber { get ; set ; } = - 1 ;
45- [ Parameter ( Mandatory = false ) ]
46- public int StartColumnNumber { get ; private set ; } = - 1 ;
47- [ Parameter ( Mandatory = false ) ]
48- public int EndLineNumber { get ; private set ; } = - 1 ;
49- [ Parameter ( Mandatory = false ) ]
50- public int EndColumnNumber { get ; private set ; } = - 1 ;
45+ [ Parameter ( Mandatory = false , ParameterSetName = "NoRange" ) ]
46+ public int StartColumnNumber { get ; set ; } = - 1 ;
47+ [ Parameter ( Mandatory = false , ParameterSetName = "NoRange" ) ]
48+ public int EndLineNumber { get ; set ; } = - 1 ;
49+ [ Parameter ( Mandatory = false , ParameterSetName = "NoRange" ) ]
50+ public int EndColumnNumber { get ; set ; } = - 1 ;
5151
5252#if DEBUG
5353 /// <summary>
@@ -100,9 +100,12 @@ protected override void ProcessRecord()
100100 {
101101 // todo add range parameter
102102 // todo add tests to check range formatting
103- var range = StartLineNumber == - 1 ?
104- null :
105- new Range ( StartLineNumber , StartColumnNumber , EndLineNumber , EndColumnNumber ) ;
103+ var range = Range ;
104+ if ( this . ParameterSetName . Equals ( "NoRange" ) )
105+ {
106+ range = new Range ( StartLineNumber , StartColumnNumber , EndLineNumber , EndColumnNumber ) ;
107+ }
108+
106109 var text = Formatter . Format ( ScriptDefinition , inputSettings , range , this ) ;
107110 this . WriteObject ( text ) ;
108111 }
0 commit comments