#include "modules/sksg/include/SkSGNode.h"
#include "include/private/base/SkDebug.h"
#include "modules/sksg/include/SkSGInvalidationController.h"
#include "src/core/SkRectPriv.h"
#include <algorithm>
namespace sksg {
class Node::ScopedFlag { … };
#define TRAVERSAL_GUARD …
Node::Node(uint32_t invalTraits)
: … { … }
Node::~Node() { … }
void Node::observeInval(const sk_sp<Node>& node) { … }
void Node::unobserveInval(const sk_sp<Node>& node) { … }
template <typename Func>
void Node::forEachInvalObserver(Func&& func) const { … }
void Node::invalidate(bool damageBubbling) { … }
const SkRect& Node::revalidate(InvalidationController* ic, const SkMatrix& ctm) { … }
}