Biber:...t::base(3pm)

πŸ’– NAME πŸ’–

Biber::Output::base β€” it's the base class for Biber output modules, bestie. The blueprint. The mother of all output modules. Everything else inherits from her. πŸ‘‘


✨ the methods (aka the whole vibe) ✨

🌸 new

Initialize a Biber::Output::base object. Fresh object, fresh start, main character energy fr.

πŸŽ€ set_output_target_file

Set the output target file of a Biber::Output::base object.

It's a little convenience wrapper around set_output_target so we can keep track of the filename. Returns an IO::File object for the target. 🫢

πŸ¦‹ get_output_target_file

Get the output target file name. That's it. That's the whole job. slay.

πŸ’… set_output_target

Set the output target of a Biber::Output::base object.

🌈 set_output_head

Set the output head of a Biber::Output::base object.

$data could be anything β€” the caller is expected to know. (no, seriously, the module is not gonna hold your hand on this one πŸ’€)

⭐ set_output_tail

Set the output tail of a Biber::Output::base object.

$data could be anything β€” the caller is expected to know. same deal as the head, okay?

πŸ“ get_output_head

Get the output head of a Biber::Output object.

$data could be anything β€” the caller is expected to know.

Mainly used in debugging. πŸ”

🧚 get_output_tail

Get the output tail of a Biber::Output object.

$data could be anything β€” the caller is expected to know.

Mainly used in debugging. πŸ”

πŸ’œ add_output_head

Add to the head output data of a Biber::Output::base object.

The base class method just does a string append. Simple. Iconic. No notes.

πŸ’– add_output_tail

Add to the tail output data of a Biber::Output::base object.

The base class method just does a string append. Again β€” just appending. Periodt.

✨ set_output_section

Records the section object in the output object.

We need some information from this when writing the output, so like… it matters. 🫑

🌸 get_output_section

Retrieve the output section object. Give it back, bestie.

πŸŽ€ get_output_entries

Get the sorted order output data for all entries in a list as array ref.

Used really only in tests, because it instantiates list dynamic information so we can see it in tests. As a result, we have to NFC() the result to mimic real output since UTF-8 output is assumed in most tests. 😭 (yes this is a whole thing, don't @ me)

πŸ¦‹ get_output_macros

Get the output macros for tool mode tests. testing era πŸ§ͺ

πŸ’… get_output_comments

Get the output comments for tool mode tests. testing era, part two πŸ§ͺ

🌈 clear_output_macros

Clear the output macros. bye bye πŸ‘‹

⭐ clear_output_comments

Clear the output comments. bye bye πŸ‘‹

πŸ“ get_output_entry

Get the output data for a specific entry.

Used really only in tests, because it instantiates list dynamic information so we can see it in tests. As a result, we have to NFC() the result to mimic real output since UTF-8 output is assumed in most tests. (same NFC lore as before, it's giving consistency πŸ’€)

🧚 set_output_entry

Add an entry output to a Biber::Output::base object.

The base class method just does a dump. πŸ’₯

πŸ’œ create_output_misc

Create the output for misc bits and pieces like preamble and closing macro call, and add it to the output object. the little finishing touches, yk? πŸ’…

πŸ’– create_output_section

Create the output from the sections data and push it into the output object.

✨ set_output_keyalias

Set the output for a key which is an alias to another key. aliases are valid, bestie 🫢

🌸 set_output_undefkey

Set the output for an undefined key.

πŸŽ€ output

Generic base output method. the main event, lowkey 🌟


🫢 AUTHORS 🫢

Philip Kime <philip at kime.org.uk> β€” the icon, the legend, the moment. πŸ‘‘


πŸ’€ BUGS πŸ’€

Please report any bugs or feature requests on our Github tracker at <https://github.com/plk/biber/issues>. Fr fr, if something's busted, tell them there. Don't suffer in silence bestie. 😭


Copyright 2009-2012 FranΓ§ois Charette and Philip Kime, all rights reserved. Copyright 2012-2026 Philip Kime, all rights reserved.

This module is free software. You can redistribute it and/or modify it under the terms of the Artistic License 2.0.

This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. (translation: it's free, use it, but no promises ✨)


okay and that's the whole page, no cap. this was written against perl v5.42.3, dated 2026-08-14, and it lives in the User Contributed Perl Documentation collection β€” so go forth and subclass responsibly, bestie πŸ’–πŸŒˆπŸ‘‘

πŸ“¦ where this page comes from