File tree Expand file tree Collapse file tree 2 files changed +37
-4
lines changed Expand file tree Collapse file tree 2 files changed +37
-4
lines changed Original file line number Diff line number Diff line change @@ -640,16 +640,16 @@ export namespace Rule {
640640 LangOptions : Linter . LanguageOptions ;
641641 Code : SourceCode ;
642642 RuleOptions : any [ ] ;
643- Visitor : NodeListener ;
643+ Visitor : RuleListener ;
644644 Node : JSSyntaxElement ;
645645 MessageIds : string ;
646646 ExtRuleDocs : { } ;
647647 } > {
648- create ( context : RuleContext ) : NodeListener ;
648+ create ( context : RuleContext ) : RuleListener ;
649649 }
650650
651651 type NodeTypes = ESTree . Node [ "type" ] ;
652- interface NodeListener extends RuleVisitor {
652+ interface NodeListener {
653653 ArrayExpression ?:
654654 | ( ( node : ESTree . ArrayExpression & NodeParentExtension ) => void )
655655 | undefined ;
@@ -1124,6 +1124,16 @@ export namespace Rule {
11241124
11251125 onCodePathSegmentEnd ?( segment : CodePathSegment , node : Node ) : void ;
11261126
1127+ onUnreachableCodePathSegmentStart ?(
1128+ segment : CodePathSegment ,
1129+ node : Node ,
1130+ ) : void ;
1131+
1132+ onUnreachableCodePathSegmentEnd ?(
1133+ segment : CodePathSegment ,
1134+ node : Node ,
1135+ ) : void ;
1136+
11271137 onCodePathSegmentLoop ?(
11281138 fromSegment : CodePathSegment ,
11291139 toSegment : CodePathSegment ,
@@ -1222,7 +1232,7 @@ export type JSRuleDefinition<
12221232 {
12231233 LangOptions : Linter . LanguageOptions ;
12241234 Code : SourceCode ;
1225- Visitor : Rule . NodeListener ;
1235+ Visitor : Rule . RuleListener ;
12261236 Node : JSSyntaxElement ;
12271237 } ,
12281238 Options
Original file line number Diff line number Diff line change @@ -807,6 +807,8 @@ rule = {
807807 } ,
808808 onCodePathSegmentStart ( segment , node ) { } ,
809809 onCodePathSegmentEnd ( segment , node ) { } ,
810+ onUnreachableCodePathSegmentStart ( segment , node ) { } ,
811+ onUnreachableCodePathSegmentEnd ( segment , node ) { } ,
810812 onCodePathSegmentLoop ( fromSegment , toSegment , node ) { } ,
811813 IfStatement ( node ) {
812814 node . parent ;
@@ -969,6 +971,27 @@ type DeprecatedRuleContextKeys =
969971 } ,
970972} ) ;
971973
974+ ( ) : JSRuleDefinition => ( {
975+ create ( ) {
976+ return {
977+ onCodePathStart ( codePath , node ) { } ,
978+ onCodePathSegmentStart ( segment , node ) { } ,
979+ onCodePathSegmentLoop ( fromSegment , toSegment , node ) { } ,
980+ Program ( node ) { } ,
981+ "Program:exit" ( node ) { } ,
982+ } satisfies Rule . RuleListener ;
983+ } ,
984+ } ) ;
985+
986+ ( ) : JSRuleDefinition => ( {
987+ // @ts -expect-error invalid return type
988+ create ( ) {
989+ return {
990+ foo : null ,
991+ } ;
992+ } ,
993+ } ) ;
994+
972995// #endregion
973996
974997// #region Linter
You can’t perform that action at this time.
0 commit comments