YAML::PP::Emitter(3)

✨ NAME ✨

Okay so bestie, this is the manual page for YAML::PP::Emitter(3) β€” a User Contributed Perl Documentation situation πŸ’…. The official name line is YAML::PP::Emitter - Emitting events ✨.

🌸 SYNOPSIS 🌸

my $emitter = YAML::PP::Emitter->new(
    indent => 4,
);

$emitter->init;

$emitter->stream_start_event;
$emitter->document_start_event({ implicit => 1 });
$emitter->sequence_start_event;
$emitter->scalar_event({ value => $input, style => $style });
$emitter->sequence_end_event;
$emitter->document_end_event({ implicit => 1 });
$emitter->stream_end_event;

my $yaml = $emitter->writer->output;
$emitter->finish;

πŸ¦‹ DESCRIPTION πŸ¦‹

So the emitter emits events to YAML, fr fr. It gives you methods for each event type, and the arguments are mostly the same as the events from YAML::PP::Parser 🫢.

πŸ‘‘ METHODS πŸ‘‘

  • new β€” constructor.
my $emitter = YAML::PP::Emitter->new(
    indent => 4,
);

Currently takes these options:

  • indent
  • writer
  • The event methods are: stream_start_event, stream_end_event, document_start_event, document_end_event, sequence_start_event, sequence_end_event, mapping_start_event, mapping_end_event, scalar_event, alias_event πŸŽ€.
  • indent, set_indent β€” getter/setter for number of indentation spaces.
TODO: Currently sequences are always zero-indented.
  • writer, set_writer β€” getter/setter for the writer object. By default YAML::PP::Writer. You can pass your own writer if you want to output the resulting YAML yourself.
  • init β€” Initialize.
  • finish

Okay bestie, that’s the whole page πŸ’– β€” it’s from perl v5.42.0, dated 2026-04-24, and it’s the YAML::PP::Emitter(3) manual page. Slay and bye ✨

πŸ“¦ where this page comes from