Tree::Binary::VisitorFactory - A factory object for dispensing Visitor objects


NAME

Tree::Binary::VisitorFactory - A factory object for dispensing Visitor objects


SYNOPSIS

  use Tree::Binary::VisitorFactory;

  my $tf = Tree::Binary::VisitorFactory->new();

  my $visitor = $tf->get("InOrderTraveral");

  # or call it as a class method
  my $visitor = Tree::Binary::VisitorFactory->getVisitor("PostOrderTraveral");


DESCRIPTION

This object is really just a factory for dispensing Tree::Binary::Visitor::* objects. It is not required to use this package in order to use all the Visitors, it is just a somewhat convienient way to avoid having to type thier long class names.

I considered making this a Singleton, but I did not because I thought that some people might not want that. I know that I am very picky about using Singletons, especially in multiprocess environments like mod_perl, so I implemented the smallest instance I knew how to, and made sure all other methods could be called as class methods too.


METHODS

new
Returns an minimal instance of this object, basically just a reference back to the package (literally, see the source if you care).

get ($visitor_type)
Attempts to load the $visitor_type and returns an instance of it if successfull. If no $visitor_type is specified an exception is thrown, if $visitor_type fails to load, and exception is thrown.

getVisitor ($visitor_type)
This is an alias of get.


BUGS

None that I am aware of. Of course, if you find a bug, let me know, and I will be sure to fix it.


CODE COVERAGE

See the CODE COVERAGE section of Tree::Binary for details.


AUTHOR

stevan little, <stevan@iinteractive.com>


COPYRIGHT AND LICENSE

Copyright 2004, 2005 by Infinity Interactive, Inc.

http://www.iinteractive.com

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

 Tree::Binary::VisitorFactory - A factory object for dispensing Visitor objects