NAME
Data::Object::Data
ABSTRACT
Data-Object Data Extraction Class
SYNOPSIS
use Data::Object::Data;
my $data = Data::Object::Data->new;
This example is extracting from the main package.
use Data::Object::Data;
my $data = Data::Object::Data->new(from => 'Example::Package');
This example is extracting from a class.
use Data::Object::Data;
my $data = Data::Object::Data->new(file => 'lib/Example/Package.pm');
This example is extracting from a file.
use Data::Object::Data;
my $data = Data::Object::Data->new(data => [,'...']);
This example is extracting from existing data.
package Command;
use Data::Object::Data;
=pod help
fetches results from the api
=cut
my $data = Data::Object::Data->new(
from => 'Command'
);
my $help = $data->content('help');
# fetches results ...
my $token = $data->content('token');
# token: the access token ...
my $secret = $data->content('secret');
# secret: the secret for ...
my $flags = $data->contents('flag');
# [,...]
__DATA__
=flag secret
secret: the secret for the account
=flag token
token: the access token for the account
=cut
DESCRIPTION
This package provides methods for parsing and extracting pod-like data sections from any file or package. The pod-like syntax allows for using these sections anywhere in the source code and Perl properly ignoring them.
INHERITANCE
This package inherits behaviors from:
LIBRARIES
This package uses type constraints defined by:
METHODS
This package implements the following methods.
content
content(Str $arg1) : Str
The content method returns the pod-like section where the name matches the given string.
- content example
-
=pod help Example content =cut # given $data $data->content('help'); # Example content
contents
contents(Str $arg1) : ArrayRef
The contents method returns all pod-like sections that start with the given string, e.g. pod
matches =pod foo
. This method returns an arrayref of data for the matched sections.
data
data(Str $arg1) : ArrayRef
The data method returns the contents from the DATA
and END
sections of a package.
file
file(Str $arg1) : ArrayRef
The file method returns the contents of a file which contains pod-like sections for a given filename.
from_data
from_data(Str $arg1) : Str
The from_data method returns content for the given class to be passed to the constructor. This method isn't meant to be called directly.
from_file
from_file(Str $arg1) : Str
The from_data method returns content for the given file to be passed to the constructor. This method isn't meant to be called directly.
item
item(Str $arg1) : HashRef
The item method returns metadata for the pod-like section that matches the given string.
list
list(Str $arg1) : ArrayRef
The list method returns metadata for each pod-like section that matches the given string.
parser
parser(Str $arg1) : ArrayRef
The parser method extracts pod-like sections from a given string and returns an arrayref of metadata.
pluck
pluck(Str $arg1, Str $arg2) : HashRef
The pluck method splices and returns metadata for the pod-like section that matches the given list or item by name.
CREDITS
Al Newkirk, +309
Anthony Brummett, +10
Adam Hopkins, +2
José Joaquín Atria, +1
AUTHOR
Al Newkirk, awncorp@cpan.org
LICENSE
Copyright (C) 2011-2019, Al Newkirk, et al.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
PROJECT
SEE ALSO
To get the most out of this distribution, consider reading the following: