{
    "content": [
        {
            "type": "text",
            "text": "# oose (man)\n\n## NAME\n\noose - syntactic sugar to make Moose one-liners easier\n\n## SYNOPSIS\n\n# create a Moose class on the fly ...\nperl -Moose=Foo -e 'has bar => ( is=>q[ro], default => q[baz] ); print Foo->new->bar' # prints baz\n# loads an existing class (Moose or non-Moose)\n# and re-\"opens\" the package definition to make\n# debugging/introspection easier\nperl -Moose=+My::Class -e 'print join \", \" => PACKAGE->meta->getmethodlist'\n# also loads Moose::Util::TypeConstraints to allow subtypes etc\nperl -Moose=Person -e'subtype q[ValidAge] => as q[Int] => where { $ > 0 && $ < 78 }; has => age ( isa => q[ValidAge], is => q[ro]); Person->new(age => 90)'\n\n## DESCRIPTION\n\noose.pm is a simple source filter that adds \"package $name; use Moose; use\nMoose::Util::TypeConstraints;\" to the beginning of your script and was entirely created\nbecause typing \"perl -e'package Foo; use Moose; ...'\" was annoying me.\n\n## Sections\n\n- **NAME**\n- **VERSION**\n- **SYNOPSIS**\n- **DESCRIPTION**\n- **INTERFACE** (1 subsections)\n- **DEPENDENCIES**\n- **INCOMPATIBILITIES**\n- **BUGS**\n- **AUTHORS**\n- **COPYRIGHT AND LICENSE**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "oose",
        "section": "",
        "mode": "man",
        "summary": "oose - syntactic sugar to make Moose one-liners easier",
        "synopsis": "# create a Moose class on the fly ...\nperl -Moose=Foo -e 'has bar => ( is=>q[ro], default => q[baz] ); print Foo->new->bar' # prints baz\n# loads an existing class (Moose or non-Moose)\n# and re-\"opens\" the package definition to make\n# debugging/introspection easier\nperl -Moose=+My::Class -e 'print join \", \" => PACKAGE->meta->getmethodlist'\n# also loads Moose::Util::TypeConstraints to allow subtypes etc\nperl -Moose=Person -e'subtype q[ValidAge] => as q[Int] => where { $ > 0 && $ < 78 }; has => age ( isa => q[ValidAge], is => q[ro]); Person->new(age => 90)'",
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [],
        "examples": [],
        "see_also": [],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "VERSION",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 11,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 4,
                "subsections": []
            },
            {
                "name": "INTERFACE",
                "lines": 2,
                "subsections": [
                    {
                        "name": "import($package)",
                        "lines": 3
                    }
                ]
            },
            {
                "name": "DEPENDENCIES",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "INCOMPATIBILITIES",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "BUGS",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "AUTHORS",
                "lines": 20,
                "subsections": []
            },
            {
                "name": "COPYRIGHT AND LICENSE",
                "lines": 8,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "oose - syntactic sugar to make Moose one-liners easier\n",
                "subsections": []
            },
            "VERSION": {
                "content": "version 2.2200\n",
                "subsections": []
            },
            "SYNOPSIS": {
                "content": "# create a Moose class on the fly ...\nperl -Moose=Foo -e 'has bar => ( is=>q[ro], default => q[baz] ); print Foo->new->bar' # prints baz\n\n# loads an existing class (Moose or non-Moose)\n# and re-\"opens\" the package definition to make\n# debugging/introspection easier\nperl -Moose=+My::Class -e 'print join \", \" => PACKAGE->meta->getmethodlist'\n\n# also loads Moose::Util::TypeConstraints to allow subtypes etc\nperl -Moose=Person -e'subtype q[ValidAge] => as q[Int] => where { $ > 0 && $ < 78 }; has => age ( isa => q[ValidAge], is => q[ro]); Person->new(age => 90)'\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "oose.pm is a simple source filter that adds \"package $name; use Moose; use\nMoose::Util::TypeConstraints;\" to the beginning of your script and was entirely created\nbecause typing \"perl -e'package Foo; use Moose; ...'\" was annoying me.\n",
                "subsections": []
            },
            "INTERFACE": {
                "content": "oose provides exactly one method and it's automatically called by perl:\n",
                "subsections": [
                    {
                        "name": "import($package)",
                        "content": "Pass a package name to import to be used by the source filter. The package defaults to\n\"Class\" if none is given.\n"
                    }
                ]
            },
            "DEPENDENCIES": {
                "content": "You will need Filter::Simple and eventually Moose\n",
                "subsections": []
            },
            "INCOMPATIBILITIES": {
                "content": "None reported. But it is a source filter and might have issues there.\n",
                "subsections": []
            },
            "BUGS": {
                "content": "See \"BUGS\" in Moose for details on reporting bugs.\n",
                "subsections": []
            },
            "AUTHORS": {
                "content": "•   Stevan Little <stevan@cpan.org>\n\n•   Dave Rolsky <autarch@urth.org>\n\n•   Jesse Luehrs <doy@cpan.org>\n\n•   Shawn M Moore <sartak@cpan.org>\n\n•   יובל קוג'מן (Yuval Kogman) <nothingmuch@woobling.org>\n\n•   Karen Etheridge <ether@cpan.org>\n\n•   Florian Ragwitz <rafl@debian.org>\n\n•   Hans Dieter Pearcey <hdp@cpan.org>\n\n•   Chris Prather <chris@prather.org>\n\n•   Matt S Trout <mstrout@cpan.org>\n",
                "subsections": []
            },
            "COPYRIGHT AND LICENSE": {
                "content": "This software is copyright (c) 2006 by Infinity Interactive, Inc.\n\nThis is free software; you can redistribute it and/or modify it under the same terms as the\nPerl 5 programming language system itself.\n\n\n\nperl v5.34.0                                 2022-02-06                                    oose(3pm)",
                "subsections": []
            }
        }
    }
}