Module...::Yapp(3pm)

πŸ“¦
version 0.1.2 Β· 2 versions
  • 0.1.2 Β· debian bookworm, debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking (latest)
  • 0.1.2 Β· ubuntu jammy
, in debian bookworm, debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking

✨ NAME ✨

Module::Build::Parse::Yapp β€” bestie, it builds Parse::Yapp parsers straight from source πŸ’… (it's giving Module...::Yapp(3pm) energy, iykyk)


πŸŽ€ VERSION πŸŽ€

version 0.1.2


🌸 SYNOPSIS 🌸

okay so literally just:

use Module::Build::Parse::Yapp;
my $build = Module::Build::Parse::Yapp->new
    (
        module_name => 'Foo::Bar',
        ...other stuff here...
    );
$build->add_build_element('yp');
$build->create_build_script;

periodt πŸ’–


πŸ¦‹ DESCRIPTION πŸ¦‹

So Module::Build::Parse::Yapp is a subclass of Module::Build, and it exists for one iconic reason: building Parse::Yapp parsers from the source. Which means β€” hear me out β€” you do not have to ship prebuilt parsers inside your source distribution. Not me finally getting to skip that 😭✨

Here's the vibe check: it goes looking for *.yp files under 'lib', and it produces Perl modules in their place, under 'blib/lib'. So lowkey, a grammar file like lib/A/B/C.yp gets converted into blib/lib/A/B/C.pm, with a package name of A::B::C. Slay πŸ’…


πŸ‘‘ SEE ALSO πŸ‘‘


πŸ’– AUTHOR πŸ’–

Andrius Merkys <merkys@cpan.org>


This software is Copyright (c) 2020 by Andrius Merkys.

This is free software, licensed under:

The (three-clause) BSD License

and that's the whole page, bestie 🫢 it's perl v5.36.0, dated 2022-11-29, brought to you by the fine folks at User Contributed Perl Documentation β€” mwah πŸ’‹ go build some parsers fr fr 🌟