{
    "mode": "perldoc",
    "parameter": "Mail::Message::Head::ListGroup",
    "section": "",
    "url": "https://www.chedong.com/phpMan.php/perldoc/Mail%3A%3AMessage%3A%3AHead%3A%3AListGroup/json",
    "generated": "2026-10-08T12:38:51Z",
    "synopsis": "my $lg = Mail::Message::Head::ListGroup->new(head => $head, ...);\n$head->addListGroup($lg);\nmy $lg = $head->addListGroup(...);\n$lg->delete;",
    "sections": {
        "NAME": {
            "content": "Mail::Message::Head::ListGroup - mailinglist related header fields\n",
            "subsections": []
        },
        "INHERITANCE": {
            "content": "Mail::Message::Head::ListGroup\nis a Mail::Message::Head::FieldGroup\nis a Mail::Reporter\n",
            "subsections": []
        },
        "SYNOPSIS": {
            "content": "my $lg = Mail::Message::Head::ListGroup->new(head => $head, ...);\n$head->addListGroup($lg);\n\nmy $lg = $head->addListGroup(...);\n\n$lg->delete;\n",
            "subsections": []
        },
        "DESCRIPTION": {
            "content": "A *list group* is a set of header fields which are added by mailing-list managing software. This\nclass knowns various details about that software.\n\nThe knowledge and test messages which are used to initially implement this module is taken from\nMail::ListDetector, written by Michael Stevens <mailto:michael@etla.org>. The logic is\nredesigned to add flexibility and use the powerful MailBox features.\n\nExtends \"DESCRIPTION\" in Mail::Message::Head::FieldGroup.\n",
            "subsections": []
        },
        "METHODS": {
            "content": "Extends \"METHODS\" in Mail::Message::Head::FieldGroup.\n",
            "subsections": [
                {
                    "name": "Constructors",
                    "content": "Extends \"Constructors\" in Mail::Message::Head::FieldGroup.\n\n$obj->address()\nReturns a Mail::Message::Field::Address object (or \"undef\") which defines the posting\naddress of the mailing list.\n\n$obj->clone()\nInherited, see \"Constructors\" in Mail::Message::Head::FieldGroup\n\n$obj->from($head|$message)\nCreate a \"Mail::Message::Head::ListGroup\" based in the specified $message or message $head.\n\n$obj->implementedTypes()\nMail::Message::Head::ListGroup->implementedTypes()\nInherited, see \"Constructors\" in Mail::Message::Head::FieldGroup\n\n$obj->listname()\nReturns the name of the mailing list, which is usually a part of the e-mail address which is\nused to post the messages to.\n\nMail::Message::Head::ListGroup->new($fields, %options)\nConstruct an object which maintains one set of mailing list headers\n\n-Option  --Defined in                     --Default\naddress                                    undef\nhead      Mail::Message::Head::FieldGroup  undef\nlistname                                   <derived from address>\nlog       Mail::Reporter                   'WARNINGS'\nrfc                                        undef\nsoftware  Mail::Message::Head::FieldGroup  undef\ntrace     Mail::Reporter                   'WARNINGS'\ntype      Mail::Message::Head::FieldGroup  undef\nversion   Mail::Message::Head::FieldGroup  undef\n\naddress => STRING|OBJECT\nAddress of the mailing list, which may be specified as STRING or e-mail containing object\n(a Mail::Address or Mail::Identity. In any case, the data is converted into a\nMail::Identity.\n\nhead => HEAD\nlistname => STRING\nA short textual representation of the mailing-list.\n\nlog => LEVEL\nrfc => 'rfc2919'|'rfc2369'\nDefines the mailing list software follows an rfc.\n\nsoftware => STRING\ntrace => LEVEL\ntype => STRING\nversion => STRING\n\n$obj->rfc()\nWhen the mailing list software follows the guidelines of one of the dedicated RFCs, then\nthis will be returned otherwise \"undef\". The return values can be \"rfc2919\", \"rfc2369\", or\n\"undef\".\n"
                },
                {
                    "name": "The header",
                    "content": "Extends \"The header\" in Mail::Message::Head::FieldGroup.\n\n$obj->add( <$field, $value> | $object )\nInherited, see \"The header\" in Mail::Message::Head::FieldGroup\n\n$obj->addFields( [$fieldnames] )\nInherited, see \"The header\" in Mail::Message::Head::FieldGroup\n\n$obj->attach($head)\nInherited, see \"The header\" in Mail::Message::Head::FieldGroup\n\n$obj->delete()\nInherited, see \"The header\" in Mail::Message::Head::FieldGroup\n\n$obj->fieldNames()\nInherited, see \"The header\" in Mail::Message::Head::FieldGroup\n\n$obj->fields()\nInherited, see \"The header\" in Mail::Message::Head::FieldGroup\n\n$obj->head()\nInherited, see \"The header\" in Mail::Message::Head::FieldGroup\n"
                },
                {
                    "name": "Access to the header",
                    "content": "Extends \"Access to the header\" in Mail::Message::Head::FieldGroup.\n\n$obj->isListGroupFieldName($name)\nMail::Message::Head::ListGroup->isListGroupFieldName($name)\n$obj->software()\nInherited, see \"Access to the header\" in Mail::Message::Head::FieldGroup\n\n$obj->type()\nInherited, see \"Access to the header\" in Mail::Message::Head::FieldGroup\n\n$obj->version()\nInherited, see \"Access to the header\" in Mail::Message::Head::FieldGroup\n"
                },
                {
                    "name": "Internals",
                    "content": "Extends \"Internals\" in Mail::Message::Head::FieldGroup.\n\n$obj->collectFields()\nScan the header for fields which are usually contained in mailing list software. This method\nis automatically called when a list group is constructed from() an existing header or\nmessage.\n\nReturned are the names of the list header fields found, in scalar context the amount. An\nempty list/zero indicates that this is not a mailing list message.\n\nPlease warn the author of MailBox if you see that to few or too many fields are included.\n\n$obj->detected($type, $software, $version)\nInherited, see \"Internals\" in Mail::Message::Head::FieldGroup\n"
                },
                {
                    "name": "Error handling",
                    "content": "Extends \"Error handling\" in Mail::Message::Head::FieldGroup.\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::Head::ListGroup->defaultTrace( [$level]|[$loglevel, $tracelevel]|[$level,\n$callback] )\nInherited, see \"Error handling\" in Mail::Reporter\n\n$obj->details()\nProduce information about the detected/create list group, which may be helpful during\ndebugging, by default to the selected file handle.\n\n$obj->errors()\nInherited, see \"Error handling\" in Mail::Reporter\n\n$obj->log( [$level, [$strings]] )\nMail::Message::Head::ListGroup->log( [$level, [$strings]] )\nInherited, see \"Error handling\" in Mail::Reporter\n\n$obj->logPriority($level)\nMail::Message::Head::ListGroup->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->print( [$fh] )\nInherited, see \"Error handling\" in Mail::Message::Head::FieldGroup\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::Head::FieldGroup.\n\n$obj->DESTROY()\nInherited, see \"Cleanup\" in Mail::Reporter\n"
                }
            ]
        },
        "DETAILS": {
            "content": "",
            "subsections": [
                {
                    "name": "Mailing list fields",
                    "content": "Detected lists\nThe Mail::Message::Head::ListGroup class can detect many different mailing lists, some of which\nare very popular and some of which are rare.\n\nNumerous fields in a header are added when the message is passed through a mailing list server.\nEach list software has defined its own fields, sometimes woth conflicting definitions. There are\nalso two RFCs about mailing list: \"rfc2919\" and \"rfc2369\".\n\nThe following lists are currently detected. Between parenthesis is the string returned by type()\nwhen that differs from the software name.\n\n*   CommuniGate\n\nLegacy commercial MacOS implementation by Stalker Software Inc.\n<http://www.stalker.com/mac/default.html>\n\n*   CommuniGate Pro (CommuniGatePro)\n\nCommercial rfc2919 compliant implementation by Stalker Software Inc.\n<http://www.stalker.com>\n\n*   Ecartis\n\nCommercial mailing list manager, formerly known as Listar. Produced by NodeRunner Computing.\nSee <http://www.ecartis.com>.\n\n*   Ezmlm\n\nOpen Source mailing list manager, available from <http://www.ezmlm.org>.\n\n*   FML\n\nOpen Source mailing list manager, see <http://www.fml.org>.\n\n*   Listar\n\nOld name for Ecartis.\n\n*   Listbox\n\nMailing lists defined at <http://listbox.com>.\n\n*   Mailman\n\nGNU's mailing list manager, available from <http://www.list.org>.\n\n*   Majordomo\n\nFree (licenced) mailing list manager by Great Circle Associates, available from\n<http://www.greatcircle.com/majordomo/>\n\n*   Smartlist\n\nRelated to procmail, as expressed by their shared main page at <http://www.procmail.org/>.\n\n*   Yahoo! Groups (YahooGroups)\n\nMailing lists defined at <http://groups.yahoo.com>.\n\n*   Listserv\n\nCommercial mailing list manager, produced by L-Soft. See <http://www.lsoft.com/>.\n"
                }
            ]
        },
        "DIAGNOSTICS": {
            "content": "Error: Cannot convert \"$string\" into an address object\nThe new(address) is coerced into a Mail::Message::Field::Address, which fails. Have a look\nat Mail::Message::Field::Address::coerce() to see what valid arguments are.\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.015, built on December 11, 2023.\nWebsite: http://perl.overmeer.net/CPAN/\n",
            "subsections": []
        },
        "LICENSE": {
            "content": "Copyrights 2001-2023 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": []
        }
    },
    "summary": "Mail::Message::Head::ListGroup - mailinglist related header fields",
    "flags": [],
    "examples": [],
    "see_also": []
}