Bread::Board::Traversable3pm
Role for traversing a container service tree
Usage
my $service = $container->fetch('/some/service/path');my $root = $service->get_root_container;
Version
version 0.37
Overview
This role provides the basic functionality to traverse a container / service tree. Instances of classes consuming this role will get a parent-child relationship between them.
Attributes
"parent"
Weak ref to another Bread::Board::Traversable object, read/write accessor (although you should probably not change this value directly in normal code).
Methods
"has_parent"
Predicate for the "parent" attribute, true if a parent has been set.
"detach_from_parent"
Clearer for the "parent" attribute, you should probably not call this method in normal code.
"get_root_container"
Returns the farthest ancestor of the invocant, i.e. the top-most container this object is a part of.
"fetch"
my $service = $this->fetch('/absolute/path');my $service = $this->fetch('relative/path');my $service = $this->fetch('../relative/path');
Given a (relative or absolute) path to a service or container, this method walks the tree and returns the Bread::Board::Service or Bread::Board::Container instance for that path. Dies if no object can be found for the given path.
Aliases are resolved in this call, by calling "aliased_from" until we get an actual service.
Copyright and license
This software is copyright (c) 2019, 2017, 2016, 2015, 2014, 2013, 2011, 2009 by Infinity Interactive.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
Releases
6 releases since Debian 8 (Jessie); the text changed 3 times.