{
    "content": [
        {
            "type": "text",
            "text": "# Mail::Message::Field::URIs (perldoc)\n\n## NAME\n\nMail::Message::Field::URIs - message header field with uris\n\n## SYNOPSIS\n\nmy $f = Mail::Message::Field->new('List-Post' => 'http://x.org/');\nmy $g = Mail::Message::Field->new('List-Post');\n$g->addURI('http://x.org');\nmy $uri = URI->new(...);\n$g->addURI($uri);\nmy @uris = $g->URIs;\n\n## DESCRIPTION\n\nMore recent RFCs prefer uri field notation over the various differentiated syntaxes. Especially\nthe mailing-list RFCs use these fields all the time. This class can maintain these fields.\n\n## Sections\n\n- **NAME**\n- **INHERITANCE**\n- **SYNOPSIS**\n- **DESCRIPTION**\n- **OVERLOADED**\n- **METHODS** (10 subsections)\n- **DETAILS**\n- **DIAGNOSTICS**\n- **SEE ALSO**\n- **LICENSE**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "Mail::Message::Field::URIs",
        "section": "",
        "mode": "perldoc",
        "summary": "Mail::Message::Field::URIs - message header field with uris",
        "synopsis": "my $f = Mail::Message::Field->new('List-Post' => 'http://x.org/');\nmy $g = Mail::Message::Field->new('List-Post');\n$g->addURI('http://x.org');\nmy $uri = URI->new(...);\n$g->addURI($uri);\nmy @uris = $g->URIs;",
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [],
        "examples": [],
        "see_also": [],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "INHERITANCE",
                "lines": 6,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 10,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 5,
                "subsections": []
            },
            {
                "name": "OVERLOADED",
                "lines": 20,
                "subsections": []
            },
            {
                "name": "METHODS",
                "lines": 2,
                "subsections": [
                    {
                        "name": "Constructors",
                        "lines": 36
                    },
                    {
                        "name": "The field",
                        "lines": 24
                    },
                    {
                        "name": "Access to the name",
                        "lines": 11
                    },
                    {
                        "name": "Access to the body",
                        "lines": 21
                    },
                    {
                        "name": "Access to the content",
                        "lines": 63
                    },
                    {
                        "name": "Other methods",
                        "lines": 6
                    },
                    {
                        "name": "Internals",
                        "lines": 28
                    },
                    {
                        "name": "Parsing",
                        "lines": 22
                    },
                    {
                        "name": "Error handling",
                        "lines": 42
                    },
                    {
                        "name": "Cleanup",
                        "lines": 5
                    }
                ]
            },
            {
                "name": "DETAILS",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "DIAGNOSTICS",
                "lines": 32,
                "subsections": []
            },
            {
                "name": "SEE ALSO",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "LICENSE",
                "lines": 5,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "Mail::Message::Field::URIs - message header field with uris\n",
                "subsections": []
            },
            "INHERITANCE": {
                "content": "Mail::Message::Field::URIs\nis a Mail::Message::Field::Structured\nis a Mail::Message::Field::Full\nis a Mail::Message::Field\nis a Mail::Reporter\n",
                "subsections": []
            },
            "SYNOPSIS": {
                "content": "my $f = Mail::Message::Field->new('List-Post' => 'http://x.org/');\n\nmy $g = Mail::Message::Field->new('List-Post');\n$g->addURI('http://x.org');\n\nmy $uri = URI->new(...);\n$g->addURI($uri);\n\nmy @uris = $g->URIs;\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "More recent RFCs prefer uri field notation over the various differentiated syntaxes. Especially\nthe mailing-list RFCs use these fields all the time. This class can maintain these fields.\n\nExtends \"DESCRIPTION\" in Mail::Message::Field::Structured.\n",
                "subsections": []
            },
            "OVERLOADED": {
                "content": "Extends \"OVERLOADED\" in Mail::Message::Field::Structured.\n\noverload: \"\"\nInherited, see \"OVERLOADED\" in Mail::Message::Field\n\noverload: 0+\nInherited, see \"OVERLOADED\" in Mail::Message::Field\n\noverload: <=>\nInherited, see \"OVERLOADED\" in Mail::Message::Field\n\noverload: bool\nInherited, see \"OVERLOADED\" in Mail::Message::Field\n\noverload: cmp\nInherited, see \"OVERLOADED\" in Mail::Message::Field\n\noverload: stringification\nInherited, see \"OVERLOADED\" in Mail::Message::Field::Full\n",
                "subsections": []
            },
            "METHODS": {
                "content": "Extends \"METHODS\" in Mail::Message::Field::Structured.\n",
                "subsections": [
                    {
                        "name": "Constructors",
                        "content": "Extends \"Constructors\" in Mail::Message::Field::Structured.\n\n$obj->clone()\nInherited, see \"Constructors\" in Mail::Message::Field\n\nMail::Message::Field::URIs->from($field, %options)\nInherited, see \"Constructors\" in Mail::Message::Field::Full\n\nMail::Message::Field::URIs->new($data)\n-Option    --Defined in                      --Default\nattributes  Mail::Message::Field::Structured  <ignored>\ncharset     Mail::Message::Field::Full        undef\ndatum       Mail::Message::Field::Structured  undef\nencoding    Mail::Message::Field::Full        'q'\nforce       Mail::Message::Field::Full        false\nlanguage    Mail::Message::Field::Full        undef\nlog         Mail::Reporter                    'WARNINGS'\ntrace       Mail::Reporter                    'WARNINGS'\n\nattributes => ATTRS\ncharset => STRING\ndatum => STRING\nencoding => 'q'|'Q'|'b'|'B'\nforce => BOOLEAN\nlanguage => STRING\nlog => LEVEL\ntrace => LEVEL\n\nexample:\n\nmy $mmfu = 'Mail::Message::Field::URIs;\nmy $f = $mmfu->new('List-Post' => 'mailto:x@y.com');\nmy $f = $mmfu->new('List-Post' => '<mailto:x@y.com>');\nmy $f = $mmfu->new('List-Post: <mailto:x@y.com>');\nmy $f = $mmfu->new('List-Post' => [ $uri, 'http://x.org' ]);\n"
                    },
                    {
                        "name": "The field",
                        "content": "Extends \"The field\" in Mail::Message::Field::Structured.\n\n$obj->isStructured()\nMail::Message::Field::URIs->isStructured()\nInherited, see \"The field\" in Mail::Message::Field\n\n$obj->length()\nInherited, see \"The field\" in Mail::Message::Field\n\n$obj->nrLines()\nInherited, see \"The field\" in Mail::Message::Field\n\n$obj->print( [$fh] )\nInherited, see \"The field\" in Mail::Message::Field\n\n$obj->size()\nInherited, see \"The field\" in Mail::Message::Field\n\n$obj->string( [$wrap] )\nInherited, see \"The field\" in Mail::Message::Field\n\n$obj->toDisclose()\nInherited, see \"The field\" in Mail::Message::Field\n"
                    },
                    {
                        "name": "Access to the name",
                        "content": "Extends \"Access to the name\" in Mail::Message::Field::Structured.\n\n$obj->Name()\nInherited, see \"Access to the name\" in Mail::Message::Field\n\n$obj->name()\nInherited, see \"Access to the name\" in Mail::Message::Field\n\n$obj->wellformedName( [STRING] )\nInherited, see \"Access to the name\" in Mail::Message::Field\n"
                    },
                    {
                        "name": "Access to the body",
                        "content": "Extends \"Access to the body\" in Mail::Message::Field::Structured.\n\n$obj->body()\nInherited, see \"Access to the body\" in Mail::Message::Field\n\n$obj->decodedBody(%options)\nInherited, see \"Access to the body\" in Mail::Message::Field::Full\n\n$obj->folded()\nInherited, see \"Access to the body\" in Mail::Message::Field\n\n$obj->foldedBody( [$body] )\nInherited, see \"Access to the body\" in Mail::Message::Field\n\n$obj->stripCFWS( [STRING] )\nMail::Message::Field::URIs->stripCFWS( [STRING] )\nInherited, see \"Access to the body\" in Mail::Message::Field\n\n$obj->unfoldedBody( [$body, [$wrap]] )\nInherited, see \"Access to the body\" in Mail::Message::Field\n"
                    },
                    {
                        "name": "Access to the content",
                        "content": "Extends \"Access to the content\" in Mail::Message::Field::Structured.\n\n$obj->URIs()\nReturns a list with all URIs defined by the field. Mind the lower-case 's' at the enc of the\nname.\n\nexample:\n\nmy @uris = $field->URIs;\n\n$obj->addAttribute(...)\nAttributes are not supported for URI fields.\n\n$obj->addURI($uri)\nAdd an $uri to the field. The $uri can be specified as URI object or as string which will be\nturned into an $uri object. The added $uri is returned.\n\nexample: adding an URI to an URI field\n\nmy $f   = Mail::Message::Field::URI->new('List-Post');\n\nmy $uri = URI->new(\"http://x.org\");\n$f->addURI($uri);\n\n$f->addURI(\"http://y.org\");  # simpler\n$f->addURI(\"//y.org\", \"http\");\n\n$obj->addresses()\nInherited, see \"Access to the content\" in Mail::Message::Field\n\n$obj->attrPairs()\nInherited, see \"Access to the content\" in Mail::Message::Field::Structured\n\n$obj->attribute( $object|<STRING, %options>|<$name,$value,%options> )\nInherited, see \"Access to the content\" in Mail::Message::Field::Structured\n\n$obj->attributes()\nInherited, see \"Access to the content\" in Mail::Message::Field::Structured\n\n$obj->beautify()\nInherited, see \"Access to the content\" in Mail::Message::Field::Full\n\n$obj->comment( [STRING] )\nInherited, see \"Access to the content\" in Mail::Message::Field\n\n$obj->createComment(STRING, %options)\nMail::Message::Field::URIs->createComment(STRING, %options)\nInherited, see \"Access to the content\" in Mail::Message::Field::Full\n\n$obj->createPhrase(STRING, %options)\nMail::Message::Field::URIs->createPhrase(STRING, %options)\nInherited, see \"Access to the content\" in Mail::Message::Field::Full\n\n$obj->study()\nInherited, see \"Access to the content\" in Mail::Message::Field\n\n$obj->toDate( [$time] )\nMail::Message::Field::URIs->toDate( [$time] )\nInherited, see \"Access to the content\" in Mail::Message::Field\n\n$obj->toInt()\nInherited, see \"Access to the content\" in Mail::Message::Field\n"
                    },
                    {
                        "name": "Other methods",
                        "content": "Extends \"Other methods\" in Mail::Message::Field::Structured.\n\n$obj->dateToTimestamp(STRING)\nMail::Message::Field::URIs->dateToTimestamp(STRING)\nInherited, see \"Other methods\" in Mail::Message::Field\n"
                    },
                    {
                        "name": "Internals",
                        "content": "Extends \"Internals\" in Mail::Message::Field::Structured.\n\n$obj->consume( $line | <$name,<$body|$objects>> )\nInherited, see \"Internals\" in Mail::Message::Field\n\n$obj->decode(STRING, %options)\nMail::Message::Field::URIs->decode(STRING, %options)\nInherited, see \"Internals\" in Mail::Message::Field::Full\n\n$obj->defaultWrapLength( [$length] )\nInherited, see \"Internals\" in Mail::Message::Field\n\n$obj->encode(STRING, %options)\nInherited, see \"Internals\" in Mail::Message::Field::Full\n\n$obj->fold( $name, $body, [$maxchars] )\nMail::Message::Field::URIs->fold( $name, $body, [$maxchars] )\nInherited, see \"Internals\" in Mail::Message::Field\n\n$obj->setWrapLength( [$length] )\nInherited, see \"Internals\" in Mail::Message::Field\n\n$obj->stringifyData(STRING|ARRAY|$objects)\nInherited, see \"Internals\" in Mail::Message::Field\n\n$obj->unfold(STRING)\nInherited, see \"Internals\" in Mail::Message::Field\n"
                    },
                    {
                        "name": "Parsing",
                        "content": "Extends \"Parsing\" in Mail::Message::Field::Structured.\n\n$obj->consumeComment(STRING)\nMail::Message::Field::URIs->consumeComment(STRING)\nInherited, see \"Parsing\" in Mail::Message::Field::Full\n\n$obj->consumeDotAtom(STRING)\nInherited, see \"Parsing\" in Mail::Message::Field::Full\n\n$obj->consumePhrase(STRING)\nMail::Message::Field::URIs->consumePhrase(STRING)\nInherited, see \"Parsing\" in Mail::Message::Field::Full\n\n$obj->datum( [$value] )\nInherited, see \"Parsing\" in Mail::Message::Field::Structured\n\n$obj->parse(STRING)\nInherited, see \"Parsing\" in Mail::Message::Field::Full\n\n$obj->produceBody()\nInherited, see \"Parsing\" in Mail::Message::Field::Full\n"
                    },
                    {
                        "name": "Error handling",
                        "content": "Extends \"Error handling\" in Mail::Message::Field::Structured.\n\n$obj->AUTOLOAD()\nInherited, see \"Error handling\" in Mail::Reporter\n\n$obj->addReport($object)\nInherited, see \"Error handling\" in Mail::Reporter\n\n$obj->defaultTrace( [$level]|[$loglevel, $tracelevel]|[$level, $callback] )\nMail::Message::Field::URIs->defaultTrace( [$level]|[$loglevel, $tracelevel]|[$level, $callback]\n)\nInherited, see \"Error handling\" in Mail::Reporter\n\n$obj->errors()\nInherited, see \"Error handling\" in Mail::Reporter\n\n$obj->log( [$level, [$strings]] )\nMail::Message::Field::URIs->log( [$level, [$strings]] )\nInherited, see \"Error handling\" in Mail::Reporter\n\n$obj->logPriority($level)\nMail::Message::Field::URIs->logPriority($level)\nInherited, see \"Error handling\" in Mail::Reporter\n\n$obj->logSettings()\nInherited, see \"Error handling\" in Mail::Reporter\n\n$obj->notImplemented()\nInherited, see \"Error handling\" in Mail::Reporter\n\n$obj->report( [$level] )\nInherited, see \"Error handling\" in Mail::Reporter\n\n$obj->reportAll( [$level] )\nInherited, see \"Error handling\" in Mail::Reporter\n\n$obj->trace( [$level] )\nInherited, see \"Error handling\" in Mail::Reporter\n\n$obj->warnings()\nInherited, see \"Error handling\" in Mail::Reporter\n"
                    },
                    {
                        "name": "Cleanup",
                        "content": "Extends \"Cleanup\" in Mail::Message::Field::Structured.\n\n$obj->DESTROY()\nInherited, see \"Cleanup\" in Mail::Reporter\n"
                    }
                ]
            },
            "DETAILS": {
                "content": "Extends \"DETAILS\" in Mail::Message::Field::Structured.\n",
                "subsections": []
            },
            "DIAGNOSTICS": {
                "content": "Warning: Field content is not numerical: $content\nThe numeric value of a field is requested (for instance the \"Lines\" or \"Content-Length\"\nfields should be numerical), however the data contains weird characters.\n\nWarning: Illegal character in charset '$charset'\nThe field is created with an utf8 string which only contains data from the specified\ncharacter set. However, that character set can never be a valid name because it contains\ncharacters which are not permitted.\n\nWarning: Illegal character in field name $name\nA new field is being created which does contain characters not permitted by the RFCs. Using\nthis field in messages may break other e-mail clients or transfer agents, and therefore\nmutulate or extinguish your message.\n\nWarning: Illegal character in language '$lang'\nThe field is created with data which is specified to be in a certain language, however, the\nname of the language cannot be valid: it contains characters which are not permitted by the\nRFCs.\n\nWarning: Illegal encoding '$encoding', used 'q'\nThe RFCs only permit base64 (\"b \" or \"B \") or quoted-printable (\"q\" or \"Q\") encoding. Other\nthan these four options are illegal.\n\nError: No attributes for URI fields.\nIs is not possible to add attributes to URI fields: it is not permitted by the RFCs.\n\nError: Package $package does not implement $method.\nFatal error: the specific package (or one of its superclasses) does not implement this\nmethod where it should. This message means that some other related classes do implement this\nmethod however the class at hand does not. Probably you should investigate this and probably\ninform the author of the package.\n",
                "subsections": []
            },
            "SEE ALSO": {
                "content": "This module is part of Mail-Message distribution version 3.012, built on February 11, 2022.\nWebsite: http://perl.overmeer.net/CPAN/\n",
                "subsections": []
            },
            "LICENSE": {
                "content": "Copyrights 2001-2022 by [Mark Overmeer <markov@cpan.org>]. For other contributors see ChangeLog.\n\nThis program is free software; you can redistribute it and/or modify it under the same terms as\nPerl itself. See http://dev.perl.org/licenses/\n",
                "subsections": []
            }
        }
    }
}