Net::Sieve::Script::Condition.3pm

Langue: en

Version: 2008-09-15 (debian - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

Net::Sieve::Script::Condition - parse and write conditions in sieve scripts

SYNOPSIS

   use Net::Sieve::Script::Condition;
 
   my $cond = Net::Sieve::Script::Condition->new('header');
     $cond->match_type(':contains');
     $cond->key_list('"[Test4]"');
     $cond->header_list('"Subject"');
 
    print $cond->write();
 
 

or

    my $cond = Net::Sieve::Script::Condition->new(
      'anyof (
        header :contains "Subject" "[Test]",
            header :contains "Subject" "[Test2]")'
          );
 
    print $cond->write();
 
 

DESCRIPTION

Parse and write condition part of Sieve rules, see Net::Sieve::Script.

Support RFC 5228, 5231 (relationnal) and regex draft

CONSTRUCTOR

new

Match and set accessors for each condition object in conditions tree, ``test'' is mandatory

Internal

   id :        id for condition, set by creation order
   condition : array of sub conditions 
   parent :    parent of sub condition
   AllConds :  array of pointers for all conditions
 
 

Condition parts
  not          : 'not' or nothing
  test         : 'header', 'address', 'exists', ...
  key_list     : ``subject'' or [``To'', ``Cc'']
  header_list  : ``text'' or [``text1'', ``text2'']
  address_part : ':all ', ':localpart ', ...
  match_type   : ':is ', ':contains ', ...
  comparator   : string part

METHODS

equals

  Purpose  : test conditions
  Return   : 1 on equals conditions
 
 

write

  Purpose  : write rule conditions in text format
  Return   : multi-line formated text
 
 

AUTHOR

     Yves Agostini
     CPAN ID: YVESAGO
     Univ Metz
     agostini@univ-metz.fr
     http://www.crium.univ-metz.fr
 
 
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

The full text of the license can be found in the LICENSE file included with this module.