NAME
Games::SGF::Util - Utility pack for Games::SGF objects
VERSION
Version 0.993
SYNOPSIS
Quick summary of what the module does.
Perhaps a little code snippet.
use Games::SGF::Util;
my $util = new Games::SGF::Util($sgf);
$util->filter( "C", undef ); # removes all comments from SGF
DISCRIPTION
This is a collection of useful methods for manipulating a Games::SGF object.
All Util methods in this module will not call any game movement methods. This means in order to work with files with multiple games you must move to the game of choice then pass it into a util object.
METHODS
new
$util = new Games::SGF::Util($sgf);
This initializes a new Games::SGF::Util object. Will return undef
if $sgf
is no supplied.
touch
$util->touch(\&sub);
This will call &sub
for every node in $sgf. &sub
will be passed the $sgf
object. any subroutines which manipulate the $sgf
tree will lead to undefined behavior. The safe methods to use are:
- "property" in Games::SGF
- "getProperty" in Games::SGF
- "setProperty" in Games::SGF
- "isCompose" in Games::SGF
- "isStone" in Games::SGF
- "isMove" in Games::SGF
- "isPoint" in Games::SGF
- "compose" in Games::SGF
- "stone" in Games::SGF
- "move" in Games::SGF
- "point" in Games::SGF
- "err" in Games::SGF
filter
$util->fiter( $tag, \&sub);
Will call &sub
for every $tag which is in $sgf
. &sub
will be passed the tag value. The value then be reset to the return of &sub
. If the return is "" the tag will be unset.
If the tag has a value list each value will be sent to $callback.
If the $callback returns undef it will not be set.
Example:
# removes all comments that don't match m/Keep/
$util->filter( "C", sub { return $_[0] =~ m/Keep/ ? $_[0] : ""; );
gameInfo
my(@games) = $util->gameInfo;
foreach my $game (@games) {
print "New Game\n";
foreach my $tag (keys %$game) {
print "\t$tag -> $game->{$tag}\n";
}
}
Will return the game-info tags for all games represented in the current game tree. The return order is the closest to the root, and then the closest to the main line branch.
UNWRITTEN
sgf
$sgf = $util->sgf;
$sgf = $util->sgf($sgf)
This returns a clone of the $sgf
object associated with $util
, or sets the $sgf
object to a clone of object supplied.
ALSO SEE
AUTHOR
David Whitcomb, <whitcode at gmail.com>
BUGS
Please report any bugs or feature requests to bug-games-sgf at rt.cpan.org
, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Games-SGF. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.
SUPPORT
You can find documentation for this module with the perldoc command.
perldoc Games::SGF::Util
You can also look for information at:
RT: CPAN's request tracker
AnnoCPAN: Annotated CPAN documentation
CPAN Ratings
Search CPAN
COPYRIGHT & LICENSE
Copyright 2008 David Whitcomb, all rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.