소스 검색

fix regex for shortening java names (#444)

Margaret Nolan 6 년 전
부모
커밋
1647c5607f
2개의 변경된 파일9개의 추가작업 그리고 1개의 파일을 삭제
  1. 1
    1
      internal/graph/graph.go
  2. 8
    0
      internal/graph/graph_test.go

+ 1
- 1
internal/graph/graph.go 파일 보기

@@ -28,7 +28,7 @@ import (
28 28
 )
29 29
 
30 30
 var (
31
-	javaRegExp = regexp.MustCompile(`^(?:[a-z]\w*\.)*([A-Z][\w\$]*\.(?:<init>|[a-z]\w*(?:\$\d+)?))(?:(?:\()|$)`)
31
+	javaRegExp = regexp.MustCompile(`^(?:[a-z]\w*\.)*([A-Z][\w\$]*\.(?:<init>|[a-z][\w\$]*(?:\$\d+)?))(?:(?:\()|$)`)
32 32
 	goRegExp   = regexp.MustCompile(`^(?:[\w\-\.]+\/)+(.+)`)
33 33
 	cppRegExp  = regexp.MustCompile(`^(?:(?:\(anonymous namespace\)::)(\w+$))|(?:(?:\(anonymous namespace\)::)?(?:[_a-zA-Z]\w*\::|)*(_*[A-Z]\w*::~?[_a-zA-Z]\w*)$)`)
34 34
 )

+ 8
- 0
internal/graph/graph_test.go 파일 보기

@@ -475,6 +475,14 @@ func TestShortenFunctionName(t *testing.T) {
475 475
 			"foo",
476 476
 			"foo",
477 477
 		},
478
+		{
479
+			"com.google.perftools.gwp.benchmark.FloatBench.lambda$run$0",
480
+			"FloatBench.lambda$run$0",
481
+		},
482
+		{
483
+			"java.bar.foo.FooBar.run$0",
484
+			"FooBar.run$0",
485
+		},
478 486
 	}
479 487
 	for _, tc := range testcases {
480 488
 		name := ShortenFunctionName(tc.name)