1<?php
2/**
3 * Interface declaration for php css ast visitors
4 *
5 * @license http://www.opensource.org/licenses/mit-license.php The MIT License
6 * @copyright Copyright 2010-2014 PhpCss Team
7 */
8
9namespace PhpCss\Ast {
10
11  use PhpCss;
12
13  /**
14   * Interface declaration for php css ast visitors
15   */
16  interface Visitor {
17
18    /**
19     * Visit an ast object
20     *
21     * @param Node $astNode
22     */
23    public function visit(Node $astNode): void;
24
25    /**
26     * Visit an ast object
27     *
28     * @param Node $astNode
29     * @return bool
30     */
31    public function visitEnter(Node $astNode): bool;
32
33    /**
34     * Visit an ast object
35     *
36     * @param Node $astNode
37     */
38    public function visitLeave(Node $astNode): void;
39  }
40}
41