NAME¶
Catmandu::Importer::YAML - Package that imports YAML data
SYNOPSIS¶
# From the command line
$ catmandu convert YAML to JSON < data.yaml
# In a Perl script
use Catmandu;
my $importer = Catmandu->importer('YAML',file => "/foo/bar.yaml");
my $n = $importer->each(sub {
my $hashref = $_[0];
# ...
});
The YAML input file needs to be separated into records:
---
- recordno: 1
- name: Alpha
---
- recordno: 2
- name: Beta
...
where '---' is the record separator and '...' the EOF indicator.
CONFIGURATION¶
- file
- Read input from a local file given by its path. Alternatively a scalar
reference can be passed to read from a string.
- fh
- Read input from an IO::Handle. If not specified, Catmandu::Util::io is
used to create the input stream from the
"file" argument or by using STDIN.
- encoding
- Binmode of the input stream "fh". Set to
":utf8" by default.
- fix
- An ARRAY of one or more fixes or file scripts to be applied to imported
items.
METHODS¶
Every Catmandu::Importer is a Catmandu::Iterable all its methods are inherited.
The Catmandu::Importer::YAML methods are not idempotent: YAML feeds can only
be read once.
SEE ALSO¶
Catmandu::Exporter::YAML