NAME
String::Incremental - incremental string with your rule
SYNOPSIS
use
String::Incremental;
my
$str
= String::Incremental->new(
format
=>
'foo-%2=-%='
,
orders
=> [
[0..2],
'abcd'
,
],
);
# or
my
$str
= incremental_string(
'foo-%2=-%='
,
[0..2],
'abcd'
,
);
"$str"
;
# prints 'foo-00-a'
$str
++;
$str
++;
$str
++;
"$str"
;
# prints 'foo-00-d'
$str
++;
"$str"
;
# prints 'foo-01-a'
$str
->set(
'foo-22-d'
);
"$str"
;
# prints 'foo-22-d';
$str
++;
# dies, cannot ++ any more
DESCRIPTION
String::Incremental provides generating string that can increment in accordance with your format and rule.
CONSTRUCTORS
METHODS
- as_string() : Str
-
returns "current" string.
following two variables are equivalent:
my
$a
=
$str
->as_string();
my
$b
=
"$str"
;
- set( $val : Str ) : String::Incremental
-
sets to $val.
tying with String::Incremental, assignment syntax is available as synonym of this method:
tie
my
$str
,
'String::Incremental'
, (
format
=>
'foo-%2=-%='
,
orders
=> [ [0..2],
'abcd'
],
);
$str
=
'foo-22-d'
;
# same as `$str->set( 'foo-22-d' )`
print
"$str"
;
# prints 'foo-22-d';
- increment() : Str
-
increases positional state of order and returns its character.
following two operation are equivalent:
$str
->increment();
$str
++;
- decrement() : Str
-
decreases positional state of order and returns its character.
following two operation are equivalent:
$str
->decrement();
$str
--;
FUNCTIONS
- incremental_string( $format, @orders ) : String::Incremental
-
another way to construct String::Incremental instance.
this function is not exported automatically, you need to export manually:
LICENSE
Copyright (C) issm.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
AUTHOR
issm <issmxx@gmail.com>