12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#!/usr/bin/env python
22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#coding:utf-8
32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)# Author:  mozman
42a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)# Created: 08.05.2010
52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)# Copyright (c) 2010-2013 by Manfred Moitzi
62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)# License: MIT License
72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
82a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)from ctrees cimport node_t
92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)from stack cimport node_stack_t
102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)cdef class cWalker:
122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    cdef node_t *node
132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    cdef node_t *root
142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    cdef node_stack_t *stack
152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    cdef void set_tree(self, node_t *root)
172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    cpdef reset(self)
182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    cpdef push(self)
192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    cpdef pop(self)
20