{
    "content": [
        {
            "type": "text",
            "text": "# Pod::Simple::Methody (perldoc)\n\n**Summary:** Pod::Simple::Methody -- turn Pod::Simple events into method calls\n\n**Synopsis:** require 5;\nuse strict;\npackage SomePodFormatter;\nuse base qw(Pod::Simple::Methody);\nsub handletext {\nmy($self, $text) = @;\n...\n}\nsub starthead1 {\nmy($self, $attrs) = @;\n...\n}\nsub endhead1 {\nmy($self) = @;\n...\n}\n...and start/end methods for whatever other events you want to catch.\n\n## Section Outline\n\n- **NAME** (2 lines)\n- **SYNOPSIS** (21 lines)\n- **DESCRIPTION** (9 lines)\n- **METHOD CALLING** (19 lines)\n- **SEE ALSO** (2 lines)\n- **SUPPORT** (10 lines)\n- **COPYRIGHT AND DISCLAIMERS** (8 lines)\n- **AUTHOR** (10 lines)\n\n## Full Content\n\n### NAME\n\nPod::Simple::Methody -- turn Pod::Simple events into method calls\n\n### SYNOPSIS\n\nrequire 5;\nuse strict;\npackage SomePodFormatter;\nuse base qw(Pod::Simple::Methody);\n\nsub handletext {\nmy($self, $text) = @;\n...\n}\n\nsub starthead1 {\nmy($self, $attrs) = @;\n...\n}\nsub endhead1 {\nmy($self) = @;\n...\n}\n\n...and start/end methods for whatever other events you want to catch.\n\n### DESCRIPTION\n\nThis class is of interest to people writing Pod formatters based on Pod::Simple.\n\nThis class (which is very small -- read the source) overrides Pod::Simple's\nhandleelementstart, handletext, and handleelementend methods so that parser events are\nturned into method calls. (Otherwise, this is a subclass of Pod::Simple and inherits all its\nmethods.)\n\nYou can use this class as the base class for a Pod formatter/processor.\n\n### METHOD CALLING\n\nWhen Pod::Simple sees a \"=head1 Hi there\", for example, it basically does this:\n\n$parser->handleelementstart( \"head1\", \\%attributes );\n$parser->handletext( \"Hi there\" );\n$parser->handleelementend( \"head1\" );\n\nBut if you subclass Pod::Simple::Methody, it will instead do this when it sees a \"=head1 Hi\nthere\":\n\n$parser->starthead1( \\%attributes ) if $parser->can('starthead1');\n$parser->handletext( \"Hi there\" )   if $parser->can('handletext');\n$parser->endhead1()                 if $parser->can('endhead1');\n\nIf Pod::Simple sends an event where the element name has a dash, period, or colon, the\ncorresponding method name will have a underscore in its place. For example, \"foo.bar:baz\"\nbecomes startfoobarbaz and endfoobarbaz.\n\nSee the source for Pod::Simple::Text for an example of using this class.\n\n### SEE ALSO\n\nPod::Simple, Pod::Simple::Subclassing\n\n### SUPPORT\n\nQuestions or discussion about POD and Pod::Simple should be sent to the pod-people@perl.org mail\nlist. Send an empty email to pod-people-subscribe@perl.org to subscribe.\n\nThis module is managed in an open GitHub repository, <https://github.com/perl-pod/pod-simple/>.\nFeel free to fork and contribute, or to clone <git://github.com/perl-pod/pod-simple.git> and\nsend patches!\n\nPatches against Pod::Simple are welcome. Please send bug reports to\n<bug-pod-simple@rt.cpan.org>.\n\n### COPYRIGHT AND DISCLAIMERS\n\nCopyright (c) 2002 Sean M. Burke.\n\nThis library is free software; you can redistribute it and/or modify it under the same terms as\nPerl itself.\n\nThis program is distributed in the hope that it will be useful, but without any warranty;\nwithout even the implied warranty of merchantability or fitness for a particular purpose.\n\n### AUTHOR\n\nPod::Simple was created by Sean M. Burke <sburke@cpan.org>. But don't bother him, he's retired.\n\nPod::Simple is maintained by:\n\n*   Allison Randal \"allison@perl.org\"\n\n*   Hans Dieter Pearcey \"hdp@cpan.org\"\n\n*   David E. Wheeler \"dwheeler@cpan.org\"\n\n"
        }
    ],
    "structuredContent": {
        "command": "Pod::Simple::Methody",
        "section": "",
        "mode": "perldoc",
        "summary": "Pod::Simple::Methody -- turn Pod::Simple events into method calls",
        "synopsis": "require 5;\nuse strict;\npackage SomePodFormatter;\nuse base qw(Pod::Simple::Methody);\nsub handletext {\nmy($self, $text) = @;\n...\n}\nsub starthead1 {\nmy($self, $attrs) = @;\n...\n}\nsub endhead1 {\nmy($self) = @;\n...\n}\n...and start/end methods for whatever other events you want to catch.",
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [],
        "examples": [],
        "see_also": [],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 21,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 9,
                "subsections": []
            },
            {
                "name": "METHOD CALLING",
                "lines": 19,
                "subsections": []
            },
            {
                "name": "SEE ALSO",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SUPPORT",
                "lines": 10,
                "subsections": []
            },
            {
                "name": "COPYRIGHT AND DISCLAIMERS",
                "lines": 8,
                "subsections": []
            },
            {
                "name": "AUTHOR",
                "lines": 10,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "Pod::Simple::Methody -- turn Pod::Simple events into method calls\n",
                "subsections": []
            },
            "SYNOPSIS": {
                "content": "require 5;\nuse strict;\npackage SomePodFormatter;\nuse base qw(Pod::Simple::Methody);\n\nsub handletext {\nmy($self, $text) = @;\n...\n}\n\nsub starthead1 {\nmy($self, $attrs) = @;\n...\n}\nsub endhead1 {\nmy($self) = @;\n...\n}\n\n...and start/end methods for whatever other events you want to catch.\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "This class is of interest to people writing Pod formatters based on Pod::Simple.\n\nThis class (which is very small -- read the source) overrides Pod::Simple's\nhandleelementstart, handletext, and handleelementend methods so that parser events are\nturned into method calls. (Otherwise, this is a subclass of Pod::Simple and inherits all its\nmethods.)\n\nYou can use this class as the base class for a Pod formatter/processor.\n",
                "subsections": []
            },
            "METHOD CALLING": {
                "content": "When Pod::Simple sees a \"=head1 Hi there\", for example, it basically does this:\n\n$parser->handleelementstart( \"head1\", \\%attributes );\n$parser->handletext( \"Hi there\" );\n$parser->handleelementend( \"head1\" );\n\nBut if you subclass Pod::Simple::Methody, it will instead do this when it sees a \"=head1 Hi\nthere\":\n\n$parser->starthead1( \\%attributes ) if $parser->can('starthead1');\n$parser->handletext( \"Hi there\" )   if $parser->can('handletext');\n$parser->endhead1()                 if $parser->can('endhead1');\n\nIf Pod::Simple sends an event where the element name has a dash, period, or colon, the\ncorresponding method name will have a underscore in its place. For example, \"foo.bar:baz\"\nbecomes startfoobarbaz and endfoobarbaz.\n\nSee the source for Pod::Simple::Text for an example of using this class.\n",
                "subsections": []
            },
            "SEE ALSO": {
                "content": "Pod::Simple, Pod::Simple::Subclassing\n",
                "subsections": []
            },
            "SUPPORT": {
                "content": "Questions or discussion about POD and Pod::Simple should be sent to the pod-people@perl.org mail\nlist. Send an empty email to pod-people-subscribe@perl.org to subscribe.\n\nThis module is managed in an open GitHub repository, <https://github.com/perl-pod/pod-simple/>.\nFeel free to fork and contribute, or to clone <git://github.com/perl-pod/pod-simple.git> and\nsend patches!\n\nPatches against Pod::Simple are welcome. Please send bug reports to\n<bug-pod-simple@rt.cpan.org>.\n",
                "subsections": []
            },
            "COPYRIGHT AND DISCLAIMERS": {
                "content": "Copyright (c) 2002 Sean M. Burke.\n\nThis library is free software; you can redistribute it and/or modify it under the same terms as\nPerl itself.\n\nThis program is distributed in the hope that it will be useful, but without any warranty;\nwithout even the implied warranty of merchantability or fitness for a particular purpose.\n",
                "subsections": []
            },
            "AUTHOR": {
                "content": "Pod::Simple was created by Sean M. Burke <sburke@cpan.org>. But don't bother him, he's retired.\n\nPod::Simple is maintained by:\n\n*   Allison Randal \"allison@perl.org\"\n\n*   Hans Dieter Pearcey \"hdp@cpan.org\"\n\n*   David E. Wheeler \"dwheeler@cpan.org\"\n",
                "subsections": []
            }
        }
    }
}