##
$self->tempfile( File::Temp->new(UNLINK => 1, SUFFIX => '.tmp') );
print {$self->tempfile} "I am here";
####
package test; # not 'test.pm'
use Moose;
use File::Temp;
has tempfile => (
is => 'rw',
isa => 'File::Temp',
lazy => 1,
default => sub {
File::Temp->new(UNLINK => 1, SUFFIX => '.tmp')
},
);
sub BUILD {
my $self = shift;
print { $self->tempfile } "I am here";
}