The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Giddy::Role::PathAnalyzer - Provides common path analysis methods to Giddy::Database

VERSION

version 0.012_002

SYNOPSIS

        # used internally

DESCRIPTION

This role provides Giddy::Database with common methods needed for analyzing paths in the database.

Requires the attribute '_repo' to be implemented by consuming classes.

METHODS

_list_contents( $path )

Returns a list of all files and directories in $path. Assumes $path is a directory.

_list_files( $path )

Returns a list of all static files in the directory. Assumes $path is a directory.

_list_dirs( $path )

Returns a list of all child directories in the directory. Assumes $path is a directory.

_read_content( $path )

Returns the contents of the file stored in $path.

_path_exists( $path )

Returns true if $path exists in the database index (i.e. it's not enough for the path to exist in the working directory, it must be in the Git index as well).

_is_file( $path )

Returns true if $path is a file. Assumes path exists.

_is_directory( $path )

Returns true if $path is a directory. Assumes path exists.

_is_document_dir( $path )

Returns true if $path is a document directory. Assumes path exists.

_is_static_dir( $path )

Returns true if $path is a static-file directory. Assumes path exists.

_up( $path )

Returns the parent directory of $path (if any).

AUTHOR

Ido Perlmuter, <ido at ido50.net>

BUGS

Please report any bugs or feature requests to bug-giddy at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Giddy. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

        perldoc Giddy::Role::PathAnalyzer

You can also look for information at:

LICENSE AND COPYRIGHT

Copyright 2011 Ido Perlmuter.

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.