visit method

  1. @override
dynamic visit (dynamic node)
override

Implementation

@override
dynamic visit(dynamic node) {
  if (node == null) return node;
  if (node is List) return visitArray(node);
  if (node is! Node) return node;

  final Node _node = node;
  if (_node.blocksVisibility()) return _node;

  if (visible) {
    _node.ensureVisibility();
  } else {
    _node.ensureInvisibility();
  }
  _node.accept(this);
  return _node;

//2.5.3 20151120
// SetTreeVisibilityVisitor.prototype.visit = function(node) {
//     if (!node) {
//         return node;
//     }
//     if (node.constructor === Array) {
//         return this.visitArray(node);
//     }
//
//     if (!node.blocksVisibility || node.blocksVisibility()) {
//         return node;
//     }
//     if (this.visible) {
//         node.ensureVisibility();
//     } else {
//         node.ensureInvisibility();
//     }
//
//     node.accept(this);
//     return node;
// };
}