Perl untie Function

Advertisements


Description

This function breaks the binding between a variable and a package, undoing the association created by the tie function.

Syntax

Following is the simple syntax for this function:

untie VARIABLE

Return Value

This function returns 0 on failure and 1 on success.

Example

Following is the example code showing its basic usage:

#!/usr/bin/perl -w

package MyArray;

sub TIEARRAY {
        print "TYING\n";
        bless [];
}
sub DESTROY {
        print "DESTROYING\n";
}
sub STORE{
        my ($self, $index, $value ) = @_;
        print "STORING $value at index $index\n";
        $self[$index] = $value;
}

sub FETCH {
        my ($self, $index ) = @_;
        print "FETCHING the value at index $index\n";
        return $self[$index];
}

package main;
$object = tie @x, MyArray; #@x is now a MyArray array;

print "object is a ", ref($object), "\n";

$x[0] = 'This is test'; #this will call STORE();
print $x[0], "\n";      #this will call FETCH();
print $object->FETCH(0), "\n";
untie @x    		#now @x is a normal array again.

When above code is executed, it produced following result

TYING
object is a MyArray
STORING This is test at index 0
FETCHING the value at index 0
This is test
FETCHING the value at index 0
This is test
DESTROYING


Advertisements
Advertisements