@@ -605,13 +605,13 @@ private class EnumItemNode extends TypeItemNode instanceof Enum {
605605 }
606606}
607607
608- /** An item that can be called with arguments. */
609- abstract class CallableItemNode extends ItemNode {
610- /** Gets the number of parameters of this item. */
611- abstract int getNumberOfParameters ( ) ;
608+ /** An item that can be referenced with arguments. */
609+ abstract class ParameterizableItemNode extends ItemNode {
610+ /** Gets the arity this item. */
611+ abstract int getArity ( ) ;
612612}
613613
614- private class VariantItemNode extends CallableItemNode instanceof Variant {
614+ private class VariantItemNode extends ParameterizableItemNode instanceof Variant {
615615 override string getName ( ) { result = Variant .super .getName ( ) .getText ( ) }
616616
617617 override Namespace getNamespace ( ) {
@@ -624,9 +624,7 @@ private class VariantItemNode extends CallableItemNode instanceof Variant {
624624
625625 override Visibility getVisibility ( ) { result = super .getEnum ( ) .getVisibility ( ) }
626626
627- override int getNumberOfParameters ( ) {
628- result = super .getFieldList ( ) .( TupleFieldList ) .getNumberOfFields ( )
629- }
627+ override int getArity ( ) { result = super .getFieldList ( ) .( TupleFieldList ) .getNumberOfFields ( ) }
630628
631629 override predicate hasCanonicalPath ( Crate c ) { this .hasCanonicalPathPrefix ( c ) }
632630
@@ -649,7 +647,7 @@ private class VariantItemNode extends CallableItemNode instanceof Variant {
649647 }
650648}
651649
652- class FunctionItemNode extends AssocItemNode , CallableItemNode instanceof Function {
650+ class FunctionItemNode extends AssocItemNode , ParameterizableItemNode instanceof Function {
653651 override string getName ( ) { result = Function .super .getName ( ) .getText ( ) }
654652
655653 override predicate hasImplementation ( ) { Function .super .hasImplementation ( ) }
@@ -660,12 +658,7 @@ class FunctionItemNode extends AssocItemNode, CallableItemNode instanceof Functi
660658
661659 override Visibility getVisibility ( ) { result = Function .super .getVisibility ( ) }
662660
663- override int getNumberOfParameters ( ) {
664- exists ( int arr |
665- arr = super .getNumberOfParams ( ) and
666- if super .hasSelfParam ( ) then result = arr + 1 else result = arr
667- )
668- }
661+ override int getArity ( ) { result = super .getNumberOfParamsInclSelf ( ) }
669662}
670663
671664abstract class ImplOrTraitItemNode extends ItemNode {
@@ -885,7 +878,7 @@ private class ImplItemNodeImpl extends ImplItemNode {
885878 TraitItemNode resolveTraitTyCand ( ) { result = resolvePathCand ( this .getTraitPath ( ) ) }
886879}
887880
888- private class StructItemNode extends TypeItemNode , CallableItemNode instanceof Struct {
881+ private class StructItemNode extends TypeItemNode , ParameterizableItemNode instanceof Struct {
889882 override string getName ( ) { result = Struct .super .getName ( ) .getText ( ) }
890883
891884 override Namespace getNamespace ( ) {
@@ -897,9 +890,7 @@ private class StructItemNode extends TypeItemNode, CallableItemNode instanceof S
897890
898891 override Visibility getVisibility ( ) { result = Struct .super .getVisibility ( ) }
899892
900- override int getNumberOfParameters ( ) {
901- result = super .getFieldList ( ) .( TupleFieldList ) .getNumberOfFields ( )
902- }
893+ override int getArity ( ) { result = super .getFieldList ( ) .( TupleFieldList ) .getNumberOfFields ( ) }
903894
904895 override TypeParam getTypeParam ( int i ) { result = super .getGenericParamList ( ) .getTypeParam ( i ) }
905896
@@ -1717,7 +1708,7 @@ private ItemNode resolvePathCand(RelevantPath path) {
17171708 or
17181709 exists ( CallExpr ce |
17191710 path = CallExprImpl:: getFunctionPath ( ce ) and
1720- result .( CallableItemNode ) . getNumberOfParameters ( ) = ce .getNumberOfArgs ( )
1711+ result .( ParameterizableItemNode ) . getArity ( ) = ce .getNumberOfArgs ( )
17211712 )
17221713 )
17231714}
0 commit comments