@@ -43,32 +43,32 @@ export function recursion(expression) {
4343
4444 if ( captureName ) {
4545 groupContentsStartPos . set ( captureName , token . lastIndex ) ;
46- // (?R=N)
46+ // ` (?R=N)`
4747 } else if ( rDepth ) {
4848 assertMaxInBounds ( rDepth ) ;
4949 const maxDepth = + rDepth ;
5050 const pre = expression . slice ( 0 , match . index ) ;
5151 const post = expression . slice ( token . lastIndex ) ;
5252 assertNoFollowingRecursion ( post ) ;
5353 return makeRecursive ( pre , post , maxDepth , false ) ;
54- // \g<name&R=N>
54+ // ` \g<name&R=N>`
5555 } else if ( gRName ) {
5656 assertMaxInBounds ( gRDepth ) ;
5757 const maxDepth = + gRDepth ;
5858 const outsideOwnGroupMsg = `Recursion via \\g<${ gRName } &R=${ gRDepth } > must be used within the referenced group` ;
59- // Appears before/ outside the referenced group
59+ // Appears before ( outside) the referenced group
6060 if ( ! groupContentsStartPos . has ( gRName ) ) {
6161 throw new Error ( outsideOwnGroupMsg ) ;
6262 }
6363 const startPos = groupContentsStartPos . get ( gRName ) ;
6464 const recursiveGroupContents = getGroupContents ( expression , startPos ) ;
65- // Appears after/ outside the referenced group
65+ // Appears after ( outside) the referenced group
6666 if ( ! hasUnescaped ( recursiveGroupContents , gRToken , Context . DEFAULT ) ) {
6767 throw new Error ( outsideOwnGroupMsg )
6868 }
6969 const pre = expression . slice ( startPos , match . index ) ;
7070 const post = recursiveGroupContents . slice ( pre . length + m . length ) ;
71- assertNoFollowingRecursion ( post ) ;
71+ assertNoFollowingRecursion ( expression . slice ( token . lastIndex ) ) ;
7272 return expression . slice ( 0 , startPos ) +
7373 makeRecursive ( pre , post , maxDepth , true ) +
7474 expression . slice ( startPos + recursiveGroupContents . length ) ;
0 commit comments