Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Directory::Scratch::StUseruContributed Perl DDirectory::Scratch::Structured(3)

NAME
	Directory::Scratch::Structured - creates temporary files and directories from a	structured description

SYNOPSIS
	 my %tree_structure =
		       (
		       dir_1 =>
			       {
			       subdir_1	=>{},
			       file_1 =>[],
			       file_a => [],
			       },
		       dir_2 =>
			       {
			       subdir_2	=>
				       {
				       file_22 =>[],
				       file_2a =>[],
				       },
			       file_2 =>[],
			       file_a =>['12345'],
			       file_b =>[],
			       },

		       file_0 => [] ,
		       ) ;

	 use Directory::Scratch::Structured qw(create_structured_tree) ;
	 my $temporary_directory = create_structured_tree(%tree_structure) ;

	 or

	 use Directory::Scratch	;
	 use Directory::Scratch::Structured  qw(piggyback_directory_scratch) ;

	 my $temporary_directory = Directory::Scratch->new;
	 $temporary_directory->create_structured_tree(%tree_structure) ;

DESCRIPTION
       This module adds	a create_structured_tree subroutine to the
       Directory::Scratch.

DOCUMENTATION
       I needed	a subroutine to	create a bunch of temporary directories	and
       files while running tests. I used the excellent Directory::Scratch to
       implement  such a functionality.	I proposed the subroutine to the
       Directory::Scratch author but he	preferred to implement a subroutine
       using an	unstructured input data	based on the fact that
       Directory::Scratch didn't use structured	data. This is, IMHO, flawed
       design, though it may require slightly less typing.

       I proposed a hybrid solution to reduce the amount of subroutines	and
       integrate the subroutine	using structured input into Directory::Scratch
       but we didn't reach an agreement	on the API. Instead I decided that I
       would piggyback on Directory::Scratch.

       You can access create_structured_tree through a subroutine or a method
       through a Directory::Scratch object.

       Whichever interface you choose, the argument to the
       create_structured_tree consists of tuples (hash entries). The key
       represents the name of the object to create in the directory.

       If the value is of type:

       ARRAY
	 A file	will be	created, it's contents are  the	contents of the	array
	 (See Directory::Scratch)

       HASH
	 A directory will be created. the element of the hash will also	be ,
	 recursively, created

       OTHER
	 The subroutine	will croak.

SUBROUTINES/METHODS
   create_structured_tree
	 use Directory::Scratch::Structured qw(create_structured_tree) ;

	 my $temporary_directory = create_structured_tree(%tree_structure) ;
	 my $base = $temporary_directory->base() ;

       Returns a default Directory::Scratch object.

   directory_scratch_create_structured_tree
       Adds create_structured_tree to  Directory::Scratch when you Load
       Directory::Scratch::Structured with the piggyback_directory_scratch
       option.

	 use Directory::Scratch	;
	 use Directory::Scratch::Structured qw(piggyback_directory_scratch) ;

	 my $temporary_directory = Directory::Scratch->new;
	 $temporary_directory->create_structured_tree(%tree_structure) ;

   _create_structured_tree
       Used internally by both interfaces

   piggyback
       Used internally to piggyback Directory::Scratch.

BUGS AND LIMITATIONS
       None so far.

AUTHOR
	       Khemir Nadim ibn	Hamouda
	       CPAN ID:	NKH
	       mailto:nadim@khemir.net

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

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

	   perldoc Directory::Scratch::Structured

       You can also look for information at:

       o   AnnoCPAN: Annotated CPAN documentation

	   <http://annocpan.org/dist/Directory-Scratch-Structured>

       o   RT: CPAN's request tracker

	   Please report any bugs or feature requests to  L
	   <bug-directory-scratch-structured@rt.cpan.org>.

	   We will be notified,	and then you'll	automatically be notified of
	   progress on your bug	as we make changes.

       o   Search CPAN

	   <http://search.cpan.org/dist/Directory-Scratch-Structured>

SEE ALSO
       Directory::Scratch

perl v5.24.1			  2017-07-02 Directory::Scratch::Structured(3)

NAME | SYNOPSIS | DESCRIPTION | DOCUMENTATION | SUBROUTINES/METHODS | BUGS AND LIMITATIONS | AUTHOR | LICENSE AND COPYRIGHT | SUPPORT | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Directory::Scratch::Structured&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help