NAME

Sieve::Generator::Lines - role for objects that render as lines of Sieve code

VERSION

version 0.001

DESCRIPTION

This role is consumed by all objects that render as one or more complete lines of Sieve code. It requires a single method, as_sieve.

This role isn't really meant to be used directly, and should be considered an implementation detail that may go away.

PERL VERSION

This module is shipped with no promise about what version of perl it will require in the future. In practice, this tends to mean "you need a perl from the last three years," but you can't rely on that. If a new version of perl ship, this software may begin to require it for any reason, and there is no promise that patches will be accepted to lower the minimum required perl.

METHODS

as_sieve

my $sieve_text = $lines_obj->as_sieve;
my $sieve_text = $lines_obj->as_sieve($indent_level);

This method renders the object as a string of Sieve code. The optional $indent_level argument is a non-negative integer controlling the indentation depth; each level adds two spaces. If not given, no indenting is added.

AUTHOR

Ricardo Signes <rjbs@semiotic.systems>

COPYRIGHT AND LICENSE

This software is copyright (c) 2026 by Ricardo SIGNES.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.