@@ -611,12 +611,13 @@ public string VariableNameWithoutScope(VariablePath variablePath)
611
611
/// <returns></returns>
612
612
public bool HasSplattedVariable ( CommandAst cmdAst )
613
613
{
614
- if ( cmdAst == null || cmdAst . CommandElements == null )
615
- {
616
- return false ;
617
- }
618
-
619
- return cmdAst . CommandElements . Any ( cmdElem => cmdElem is VariableExpressionAst && ( cmdElem as VariableExpressionAst ) . Splatted ) ;
614
+ return cmdAst != null
615
+ && cmdAst . CommandElements != null
616
+ && cmdAst . CommandElements . Any ( cmdElem =>
617
+ {
618
+ var varExprAst = cmdElem as VariableExpressionAst ;
619
+ return varExprAst != null && varExprAst . Splatted ;
620
+ } ) ;
620
621
}
621
622
622
623
/// <summary>
@@ -663,29 +664,31 @@ public bool PositionalParameterUsed(CommandAst cmdAst, bool moreThanThreePositio
663
664
664
665
foreach ( CommandElementAst ceAst in cmdAst . CommandElements )
665
666
{
666
- if ( ceAst is CommandParameterAst )
667
+ var cmdParamAst = ceAst as CommandParameterAst ;
668
+ if ( cmdParamAst != null )
669
+ {
670
+ // Skip if it's a switch parameter
671
+ if ( switchParams != null &&
672
+ switchParams . Any (
673
+ pm => String . Equals (
674
+ pm . Name ,
675
+ cmdParamAst . ParameterName , StringComparison . OrdinalIgnoreCase ) ) )
667
676
{
668
- // Skip if it's a switch parameter
669
- if ( switchParams != null &&
670
- switchParams . Any ( pm => String . Equals ( pm . Name , ( ceAst as CommandParameterAst ) . ParameterName , StringComparison . OrdinalIgnoreCase ) ) )
671
- {
672
- continue ;
673
- }
674
-
675
-
676
- parameters += 1 ;
677
+ continue ;
678
+ }
677
679
678
- if ( ( ceAst as CommandParameterAst ) . Argument != null )
679
- {
680
- arguments += 1 ;
681
- }
680
+ parameters += 1 ;
682
681
683
- }
684
- else
682
+ if ( cmdParamAst . Argument != null )
685
683
{
686
684
arguments += 1 ;
687
685
}
688
686
687
+ }
688
+ else
689
+ {
690
+ arguments += 1 ;
691
+ }
689
692
}
690
693
691
694
// if not the first element in a pipeline, increase the number of arguments by 1
0 commit comments