Move RelativeToTop out of basePath
RelativeToTop is documented as returning the same concrete type that was
passed in, which wasn't true for SourcePath. Implement it in SourcePath
and delete it from basePath.
Test: all soong tests pass
Flag: EXEMPT refactor
Change-Id: I5f2fd1237b964aa10565f7c6b34122dd6972fda9
diff --git a/android/paths.go b/android/paths.go
index 0661b76..dad70f7 100644
--- a/android/paths.go
+++ b/android/paths.go
@@ -1119,11 +1119,6 @@
return p
}
-func (p basePath) RelativeToTop() Path {
- ensureTestOnly()
- return p
-}
-
// SourcePath is a Path representing a file path rooted from SrcDir
type SourcePath struct {
basePath
@@ -1136,6 +1131,11 @@
return p
}
+func (p SourcePath) RelativeToTop() Path {
+ ensureTestOnly()
+ return p
+}
+
// safePathForSource is for paths that we expect are safe -- only for use by go
// code that is embedding ninja variables in paths
func safePathForSource(ctx PathContext, pathComponents ...string) (SourcePath, error) {