Assuming it exists, this will return an object representing the file /etc/postfix/main.cf. Using the code above, $file would be a Path::Resolver::SimpleEntity object, which has a content method. We could print the contents of the file to screen like this:

Path::Resolver lets you use a simple, familiar notation for accessing all kinds of hierarchical data. It's also distributed with resolvers that act as multiplexers for other resolvers. Since all resolvers share one mechanism for addressing content, they can easily be mixed and matched. Since resolvers know what kind of object they'll return, and can be fitted with translators, it's easy to ensure that all your multiplexed resolvers will resolve names to the same kind of object.

This will return an entity representing ./config/foo/bar.txt if it exists. If it doesn't, it will look for foo/bar.txt in the contents of the archive. If that's found, an entity will be returned. Finally, if neither is found, it will return false.

The path /config/main.cf would be looked for on disk as /etc/my-app/main.cf. The path /template/main.html would be looked for first as main.html in the sharedir for MyApp and failing that in the DATA section of My::Framework.