Sha256: 7dd71958e75a2f8b3faed1a93a2b485ba52a9b76f289315fb16171fc7ae77b79

Contents?: true

Size: 1.39 KB

Versions: 10

Compression:

Stored size: 1.39 KB

Contents

<?php

namespace MtHaml\Node;

use MtHaml\NodeVisitor\NodeVisitorInterface;

abstract class NodeAbstract
{
    private $position;
    private $parent;
    private $nextSibling;
    private $previousSibling;

    public function __construct(array $position)
    {
        $this->position = $position;
    }

    public function getPosition()
    {
        return $this->position;
    }

    public function getLineno()
    {
        return $this->position['lineno'];
    }

    public function getColumn()
    {
        return $this->position['column'];
    }

    protected function setParent(NodeAbstract $parent = null)
    {
        $this->parent = $parent;
    }

    public function hasParent()
    {
        return null !== $this->parent;
    }

    public function getParent()
    {
        return $this->parent;
    }

    abstract public function getNodeName();

    abstract public function accept(NodeVisitorInterface $visitor);

    protected function setNextSibling(NodeAbstract $node = null)
    {
        $this->nextSibling = $node;
    }

    public function getNextSibling()
    {
        return $this->nextSibling;
    }

    protected function setPreviousSibling(NodeAbstract $node = null)
    {
        $this->previousSibling = $node;
    }

    public function getPreviousSibling()
    {
        return $this->previousSibling;
    }

    public function isConst()
    {
        return false;
    }
}

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
guard-mthaml-0.4.0 vendor/mthaml/mthaml/lib/MtHaml/Node/NodeAbstract.php
guard-mthaml-0.3.1 vendor/mthaml/mthaml/lib/MtHaml/Node/NodeAbstract.php
guard-mthaml-0.3.0 vendor/mthaml/mthaml/lib/MtHaml/Node/NodeAbstract.php
guard-mthaml-0.2.5 vendor/mthaml/mthaml/lib/MtHaml/Node/NodeAbstract.php
guard-mthaml-0.2.4 vendor/mthaml/mthaml/lib/MtHaml/Node/NodeAbstract.php
guard-mthaml-0.2.3 vendor/mthaml/mthaml/lib/MtHaml/Node/NodeAbstract.php
guard-mthaml-0.2.2 vendor/mthaml/mthaml/lib/MtHaml/Node/NodeAbstract.php
guard-mthaml-0.2.1 vendor/mthaml/mthaml/lib/MtHaml/Node/NodeAbstract.php
guard-mthaml-0.2.0 vendor/mthaml/mthaml/lib/MtHaml/Node/NodeAbstract.php
guard-mthaml-0.1.0 vendor/mthaml/mthaml/lib/MtHaml/Node/NodeAbstract.php