Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery

Re^3: Problem using YAML

by perlfan (Curate)
on Dec 29, 2011 at 20:58 UTC ( #945557=note: print w/replies, xml ) Need Help??

in reply to Re^2: Problem using YAML
in thread Problem using YAML

Because YAML has a particular format, delineated with the "---", you will have to add a top level key that contains the contents you desire. When You decode, you will have to deference the hash key that this corresponds to. For example:
--- This: top level mapping is: - a - YAML - document
will decode to a hash that looks like:
my $yaml_hash_ref = { This => 'top level mapping', is => ['a', 'yaml', 'document'] };
Therefore, if you want "%This" to be your hash variable, you need to do this:
my %This = %{$yaml_hash_ref->{This}};
If you want the whole structure, you just use whatever YAML::decode gives you, i.e., YAML's encode doesn't take into account the name of your variable containing the data structure to convert to YAML. Similarly, decode returns a data structure reference (scalar, array, or hash) depending on how complex (e.g., hash references contain all non-trivial data structures implied by the YAML).

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://945557]
[Discipulus]: beer finished in Strasbourg? ;=)
[Corion]: Discipulus: Yeah, or it got too warm and they hope for colder beer here ;)

How do I use this? | Other CB clients
Other Users?
Others exploiting the Monastery: (7)
As of 2018-07-23 08:20 GMT
Find Nodes?
    Voting Booth?
    It has been suggested to rename Perl 6 in order to boost its marketing potential. Which name would you prefer?

    Results (459 votes). Check out past polls.