Cataly...Engine(3pm)

πŸ“¦
version 0.16 Β· 4 versions
, in debian bookworm, debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking

πŸ’– Cataly...Engine(3pm) β€” the ACL brain cell πŸ’–

ok so bestie, welcome to Catalyst::Plugin::Authorization::ACL::Engine 🧚 β€” the backend that computes ACL checks for Catalyst::Plugin::Authorization::ACL. yes that's a long name, we're gonna say it a lot, hydrate first πŸ’…


✨ SYNOPSIS ✨

# internal

that's it. that's the synopsis. it's internal, bestie, it's not for us πŸ™ˆ


🌸 METHODS 🌸

  • new $app β€” spins up a fresh new rule engine for $app. baby engine's first day on the job πŸŽ€
  • add_allow $cond β€” adds an allow condition, fr fr
  • add_deny $cond β€” adds a deny condition. we do a lil fudge on $cond, turn that cond into a proper rule, and then hand it off to add_rule ✨
  • add_rule $path, $rule β€” drops $rule onto every single action sitting under $path. all of them. every last one 🫢
  • append_rule_to_action $action, $index, $rule, $cxt β€” appends $rule to $action in slot $index, and stores the context info $cxt so we can do error reporting later. very "keeping receipts" of it πŸ’€
  • check_action_rules $action β€” evaluates the rules for an action. this is the vibe check. the main character moment πŸ‘‘
  • fudge_condition $thingy β€” converts a $thingy into a subref, for that DWIM goodness ✨ peep the main ACL docs for the full tea β˜•
  • get_action_data $action β€” getter behaviour for $action data
  • get_cxt_for_rule $rule β€” getter behaviour for the $cxt of a $rule
  • get_rules β€” getter behaviour, and it gets the rules. iconic.

πŸ¦‹ DESCRIPTION πŸ¦‹

this is the engine. it's the thing that actually executes the access control checks for Catalyst::Plugin::Authorization::ACL. it's giving backstage crew at the award show β€” vital, unglamorous, absolutely not the one you talk to directly. so please use that module directly instead, bestie, i'm begging πŸ™


🌈 TODO 🌈

  • external uris -> private paths

(we'll get to it. someday. no cap.)


πŸ’œ remi: this page is internal-API territory, so if you're poking at it directly you're either extremely brave or extremely deep in the source. either way, slay.

sign-off time, bestie πŸŽ€ this lil doc came from the User Contributed Perl Documentation collection, generated for perl v5.34.0, dated 2022-06-09. mwah. take care of her πŸ’–βœ¨πŸŒΈπŸ¦‹

πŸ“¦ where this page comes from