---
name: "Mail::Server::IMAP4::Search"
section: "3pm"
platform: "linux"
package: "libmail-box-imap4-perl"
version: "3.009-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Mail::Server::IMAP4::Search"
---

# Mail::Server::IMAP4::Search(3pm)

select messages within a IMAP folder (not completed)

## NAME

Mail::Server::IMAP4::Search - select messages within a IMAP folder (not completed)

## INHERITANCE

```
 Mail::Server::IMAP4::Search
   is a Mail::Box::Search
   is a Mail::Reporter
```

## SYNOPSIS

```
 use Mail::Box::Manager;
 my $mgr    = Mail::Box::Manager->new;
 my $folder = $mgr->open('imap4:Inbox');
 my $filter = Mail::Server::IMAP4::Search->new
    (  ...to be defined...
    );
 my @msgs   = $filter->search($folder);
 if($filter->search($message)) {...}
```

## DESCRIPTION

THIS PACKAGES IS NOT IMPLEMENTED YET...  (it's waiting for a volunteer)

Extends "DESCRIPTION" in Mail::Box::Search.

## METHODS

Extends "METHODS" in Mail::Box::Search.

### Constructors

Extends "Constructors" in Mail::Box::Search.

- Mail::Server::IMAP4::Search-\>**new**(%options)

  ```
   -Option    --Defined in       --Default
    binaries    Mail::Box::Search  <false>
    decode      Mail::Box::Search  <true>
    delayed     Mail::Box::Search  <true>
    deleted     Mail::Box::Search  <false>
    deliver     Mail::Box::Search  undef
    in          Mail::Box::Search  'BODY'
    label       Mail::Box::Search  undef
    limit       Mail::Box::Search  0
    log         Mail::Reporter     'WARNINGS'
    logical     Mail::Box::Search  'REPLACE'
    multiparts  Mail::Box::Search  <true>
    trace       Mail::Reporter     'WARNINGS'
  ```

  - binaries =\> BOOLEAN

    - decode =\> BOOLEAN

    - delayed =\> BOOLEAN

    - deleted =\> BOOLEAN

    - deliver =\> undef\|CODE\|'DELETE'

    - in =\> 'HEAD'\|'BODY'\|'MESSAGE'

    - label =\> STRING

    - limit =\> NUMBER

    - log =\> LEVEL

    - logical =\> 'REPLACE'\|'AND'\|'OR'\|'NOT'\|'AND NOT'\|'OR NOT'

    - multiparts =\> BOOLEAN

    - trace =\> LEVEL

    ### Searching

Extends "Searching" in Mail::Box::Search.

- $obj-\>**inBody**($part, $body)

  Inherited, see "Searching" in Mail::Box::Search

- $obj-\>**inHead**($part, $head)

  Inherited, see "Searching" in Mail::Box::Search

- $obj-\>**search**($folder\|$thread\|$message\|ARRAY)

  Inherited, see "Searching" in Mail::Box::Search

- $obj-\>**searchPart**($part)

  Inherited, see "Searching" in Mail::Box::Search

### The Results

Extends "The Results" in Mail::Box::Search.

- $obj-\>**printMatch**( \[$fh\], HASH )

  Inherited, see "The Results" in Mail::Box::Search

### Error handling

Extends "Error handling" in Mail::Box::Search.

- $obj-\>**AUTOLOAD**()

  Inherited, see "Error handling" in Mail::Reporter

- $obj-\>**addReport**($object)

  Inherited, see "Error handling" in Mail::Reporter

- $obj-\>**defaultTrace**( \[$level\]\|\[$loglevel, $tracelevel\]\|\[$level, $callback\] )

  - Mail::Server::IMAP4::Search-\>**defaultTrace**( \[$level\]\|\[$loglevel, $tracelevel\]\|\[$level, $callback\] )

  Inherited, see "Error handling" in Mail::Reporter

- $obj-\>**errors**()

  Inherited, see "Error handling" in Mail::Reporter

- $obj-\>**log**( \[$level, \[$strings\]\] )

  - Mail::Server::IMAP4::Search-\>**log**( \[$level, \[$strings\]\] )

  Inherited, see "Error handling" in Mail::Reporter

- $obj-\>**logPriority**($level)

  - Mail::Server::IMAP4::Search-\>**logPriority**($level)

  Inherited, see "Error handling" in Mail::Reporter

- $obj-\>**logSettings**()

  Inherited, see "Error handling" in Mail::Reporter

- $obj-\>**notImplemented**()

  Inherited, see "Error handling" in Mail::Reporter

- $obj-\>**report**( \[$level\] )

  Inherited, see "Error handling" in Mail::Reporter

- $obj-\>**reportAll**( \[$level\] )

  Inherited, see "Error handling" in Mail::Reporter

- $obj-\>**trace**( \[$level\] )

  Inherited, see "Error handling" in Mail::Reporter

- $obj-\>**warnings**()

  Inherited, see "Error handling" in Mail::Reporter

### Cleanup

Extends "Cleanup" in Mail::Box::Search.

- $obj-\>**DESTROY**()

  Inherited, see "Cleanup" in Mail::Reporter

## DIAGNOSTICS

- Error: Package $package does not implement $method.

  Fatal error: the specific package (or one of its superclasses) does not implement this method where it should. This message means that some other related classes do implement this method however the class at hand does not.  Probably you should investigate this and probably inform the author of the package.

## SEE ALSO

This module is part of Mail-Box-IMAP4 distribution version 3.009, built on April 18, 2025. Website: *http://perl.overmeer.net/CPAN/*

## LICENSE

Copyrights 2001-2025 by \[Mark Overmeer\]. For other contributors see ChangeLog.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See *http://dev.perl.org/licenses/*
