Alzabo...ptions(3pm)
β¨ NAME β¨
Alzabo::Exceptions β it literally just makes all the exception subclasses that Alzabo uses. That's the whole job. She's a builder, not a talker. π
π SYNOPSIS π
use Alzabo::Exceptions;
That's it bestie. One line. You use it and boom, the exception classes exist. No arguments, no options, no nothing. Iconic minimalism. β¨
π¦ DESCRIPTION π¦
okay so here's the tea: just by using this class, it creates all the exception classes that Alzabo needs β and it does that through the Exception::Class class. So it's like a little factory, except instead of making Stanley cups it makes error classes. π«Ά
If you wanna know the how of all this class-generation business, go peek at Exception::Class β that's where the magic recipe lives. π
π EXCEPTION CLASSES π
Here's the full roster, no one's getting left out, everyone gets a moment:
Alzabo::Exceptionβ the base class for every exception Alzabo throws. Lowkey the mother of them all. Every exception out here should return true for$@->isa('Alzabo::Exception')β except the ones that come from internal Perl errors, those are doing their own thing, we don't claim them. πAlzabo::Exception::Driverβ something went wrong while talking to a database. For the full lore, check outAlzabo::Driver.Alzabo::Exception::Evalβ you tried to eval something and the eval was like "no <3". An error came back. πAlzabo::Exception::Logicβ Alzabo got asked to do something logically impossible. Like, retrieving rows for a table that has no primary key. Bestie. You can't sit with us if you don't have a primary key. πAlzabo::Exception::NoSuchRowβ someone tried to fetch data using a primary key that straight up does not exist in the specified table. It's giving "looking for someone who ghosted you". πAlzabo::Exception::NotNullableβ an attempt was made to set a non-nullable column toNULL. Rude. Thecolumn_name,table_name, andschema_namefields are there so you can pin down the exact column that caused the drama. πAlzabo::Exception::Panicβ thrown when something completely unexpected happens. Think Monty Python. No further questions, we panic. π§Alzabo::Exception::Paramsβ thrown when there's a problem with the parameters you passed to a method or function. Missing params, invalid values, that whole genre of chaos. πAlzabo::Exception::RDBMSRulesβ a rule for the relevant RDBMS got violated. Bad schema name, bad table name, bad column attribute, etc. The RDBMS said "read the room". π«Alzabo::Exception::ReferentialIntegrityβ an insert/update/delete was attempted that would violate referential integrity constraints. The vibes were not cohesive. π¦Alzabo::Exception::SQLβ thrown when someone tries to generate invalid SQL through theAlzabo::SQLMakermodule. Not the SQL slaying we wanted. πAlzabo::Exception::Storableβ an error when trying to freeze, thaw, or clone an object using Storable. The object did not want to be preserved, bestie. πAlzabo::Exception::Systemβ some sort of system call failed. File read/write, stat, etc. The operating system said no. πAlzabo::Exception::VirtualMethodβ a virtual method was called. Which is the code's way of saying: this method should be subclassed, you were supposed to override it, go do that. π₯
πΈ AUTHOR πΈ
Dave Rolsky, <autarch@urth.org> β the actual legend behind all of this. π«Ά
and that's the whole page, no cap β¨ this was perl v5.34.0, dated 2022-06-14, and yeah β the manual page name really is Alzabo...ptions(3pm) because the title got truncated by the renderer. She's mysterious like that. bye bestie, go catch those exceptions π
π¦ where this page comes from
- debian bookworm: libalzabo-perl 0.92-6 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- debian trixie: libalzabo-perl 0.92-6 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu noble: libalzabo-perl 0.92-6 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu resolute: libalzabo-perl 0.92-6 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu stonking: libalzabo-perl 0.92-6 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms