// Copyright 2019 Google LLC. // Use of this source code is governed by a BSD-style license that can be found in the LICENSE file. #include "tools/fiddle/examples.h" // HASH=32d51e959d6cc720a74ec4822511e2cd REG_FIDDLE(Region_Iterator_rewind, 256, 256, true, 0) { void draw(SkCanvas* canvas) { auto debugster = [](const char* label, SkRegion::Iterator& iter, bool addRewind) -> void { if (addRewind) { bool success = iter.rewind(); SkDebugf("%14s rewind success=%s\n", label, success ? "true" : "false"); } auto r = iter.rect(); SkDebugf("%14s rect={%d,%d,%d,%d}\n", label, r.fLeft, r.fTop, r.fRight, r.fBottom); }; SkRegion::Iterator iter; debugster("empty iter", iter, true); SkRegion region; iter.reset(region); debugster("empty region", iter, true); region.setRect({1, 2, 3, 4}); iter.reset(region); debugster("after set rect", iter, false); debugster("after rewind", iter, true); } } // END FIDDLE