move patheffect virtuals to protected and rename

- change filterPath to safely handle if src and dst are aliases

Bug: skia:8254
Change-Id: I125d19404ca0a610f73271abb5c5455d1d50f9ed
Reviewed-on: https://skia-review.googlesource.com/147466
Commit-Queue: Mike Reed <reed@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Auto-Submit: Mike Reed <reed@google.com>
diff --git a/src/effects/SkDashImpl.h b/src/effects/SkDashImpl.h
index 7f1de77..c1bf462 100644
--- a/src/effects/SkDashImpl.h
+++ b/src/effects/SkDashImpl.h
@@ -14,13 +14,6 @@
 public:
     SkDashImpl(const SkScalar intervals[], int count, SkScalar phase);
 
-    bool filterPath(SkPath* dst, const SkPath& src, SkStrokeRec*, const SkRect*) const override;
-
-    bool asPoints(PointData* results, const SkPath& src, const SkStrokeRec&, const SkMatrix&,
-                  const SkRect*) const override;
-
-    DashType asADash(DashInfo* info) const override;
-
     Factory getFactory() const override { return CreateProc; }
 
 #ifdef SK_BUILD_FOR_ANDROID_FRAMEWORK
@@ -30,6 +23,12 @@
 protected:
     ~SkDashImpl() override;
     void flatten(SkWriteBuffer&) const override;
+    bool onFilterPath(SkPath* dst, const SkPath& src, SkStrokeRec*, const SkRect*) const override;
+
+    bool onAsPoints(PointData* results, const SkPath& src, const SkStrokeRec&, const SkMatrix&,
+                    const SkRect*) const override;
+
+    DashType onAsADash(DashInfo* info) const override;
 
 private:
     static sk_sp<SkFlattenable> CreateProc(SkReadBuffer&);