Parse:...ttings(3pm)

πŸ“¦
version 3.07 Β· 3 versions
, in debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking

πŸ’– Parse::PlainConfig::Settings β€” the settings class, bestie πŸ’–

okay so real talk: this is part of the User Contributed Perl Documentation, and the page you're looking at is Parse:...ttings(3pm) (yes the title got squished, that's just how it renders, don't panic 🫢). It's the lil settings object that Parse::PlainConfig spins up for you. Let's get into it. ✨


🌸 NAME 🌸

Parse::PlainConfig::Settings β€” it's the Settings Class, literally just that. The vault where all the default config-format vibes live. πŸ”


πŸŽ€ VERSION πŸŽ€

This is the version string, copied exactly, no edits, no notes:

$Id: lib/Parse/PlainConfig/Settings.pm, 3.07 2024/01/10 13:32:06
acorliss Exp $

So like, version 3.07, dated 2024/01/10 13:32:06, authored by acorliss. Iconic. πŸ‘‘


✨ SYNOPSIS ✨

Here's the whole vibe check in code form β€” you make one, then you ask it stuff:

use Parse::PlainConfig::Settings;

my $settings = new Parse::PlainConfig::Settings;

$ts         = $settings->tabStop;
$subindent  = $settings->subindentation;
$comment    = $settings->comment;
$delim      = $settings->delimiter;
$ldelim     = $settings->listDelimiter;
$hdelim     = $settings->hashDelimiter;
$hdoc       = $settings->hereDoc;
%propTypes  = $settings->propertyTypes;
%propRegex  = $settings->propertyRegexes;
%prototypes = $settings->prototypes;
%protoRegex = $settings->prototypeRegexes;

Look at all those accessors. She's got range. πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

ngl the description is short and it's giving confident:

The settings object is created and initialized automatically by Parse::PlainConfig.

That's it, that's the whole thing. You do not have to build this yourself β€” Parse::PlainConfig handles it for you, automatically, on its own. You're just here to peek at the settings and maybe poke them. πŸ™ˆ


🌈 SUBROUTINES/METHODS 🌈

Every single one of these is a getter, and every single one is gonna get its own lil moment. Let's go. 🫢

⭐ tabStop

$ts         = $settings->tabStop;

Default column width for tab stops. That's the number of columns a tab counts as, fr fr. πŸ“

⭐ subindentation

$subindent  = $settings->subindentation;

Default columns for indentation on line continuations. So when a line keeps going and going, this is how far it gets nudged over. πŸͺ„

⭐ comment

$comment    = $settings->comment;

Default character sequence for comments. The lil marker that says "this bit is a note, not a setting". πŸ’¬

⭐ delimiter

$delim      = $settings->delimiter;

Default character sequence used as the delimiter between the parameter name and the parameter value. So like, name <β€”this thingβ€”> value. The bridge. The hyphen in the situationship. πŸŒ‰

⭐ listDelimiter

$ldelim     = $settings->listDelimiter;

Default character sequence used as the delimiter between array elements. Keeping the array girlies separated but still in the same list. πŸ“

⭐ hashDelimiter

$hdelim     = $settings->hashDelimiter;

Default character sequence used as the delimiter between key/value pairs. Every key deserves a value, and this is the little separator that makes it official. πŸ’œ

⭐ hereDoc

$hdoc       = $settings->hereDoc;

Default character sequence used as the token marking the end of here docs. The "we're done here" marker. Periodt. 🎬

⭐ propertyTypes

%propTypes  = $settings->propertyTypes;

Hash of property names => data types. A whole mapping, bestie. Lookup table behavior. πŸ—ΊοΈ

⭐ propertyRegexes

%propRegex  = $settings->propertyRegexes;

Hash of property names to regular expression to extract data from the line. Yes, regexes, we love her, we fear her a little. 😭

⭐ prototypes

%prototypes = $settings->prototypes;

Hash of prototype names => data types. Same energy as propertyTypes but for prototypes. Sibling behavior. πŸ‘―

⭐ prototypeRegexes

%protoRegex = $settings->prototypeRegexes;

Hash of prototype names to regular expression to extract data from the line. The prototype version of the regex hash. She's consistent, she's reliable. πŸ”₯


🧚 DEPENDENCIES 🧚

She does not stand alone, and honestly? Same. Here's the whole squad:

  • Class::EHierarchy
  • Paranoid
  • Paranoid::Debug
  • Parse::PlainConfig::Constants

πŸ’€ BUGS AND LIMITATIONS πŸ’€

okay so bestie... this section is empty. Nothing documented here. No known bugs listed, no limitations listed. Which lowkey is a flex but also don't read that as a promise, iykyk. πŸ€·β™€οΈ


πŸ‘‘ AUTHOR πŸ‘‘

Arthur Corliss (corliss@digitalmages.com) β€” the icon, the legend, the one who wrote it. 🫑


This software is licensed under the same terms as Perl, itself. Please see http://dev.perl.org/licenses/ for more information.

(c) 2016, Arthur Corliss (corliss@digitalmages.com)


and that's the whole page, bestie!! πŸŽ€βœ¨ This was documented for perl v5.38.2, dated 2024-01-20 β€” mwah, go forth and configure responsibly, ily πŸ’–πŸ¦‹πŸŒΈ

πŸ“¦ where this page comes from