Hi,
For one of my programs, I need to have a hashtable as in Perl. Unfortunately shell doesnt provide any variable like hash. Is there anyway/trick, I could implement a hash in shell (using shell scripts/sed/awk).
JP (2 Replies)
Hello List,
Iam searching for a solution where i can use hash based searching .
In Detail , I have linked list which will be dynamically increasing .
I need a best searching mechanisim such a way that it can take only one itereation .
Right now iam using linear search which is taking... (11 Replies)
Dear Friends,
I want to create a hash table using the standard Glib header (if possible) so that I can store a structure and keep the hash key(search key) based on a string.
Any example code would be great since I am not able to get the main idea.
best regards
Skull (4 Replies)
Hi,
I have a nested hash table say for example as follows:
%coins =
(
1 => {
"Quarter"=>25,
"Dime"=>10,
"Nickel"=>5,
},
2 => {
"asd"=>34,
"qwe"=>45,
... (0 Replies)
hello,
I am creating a HASH table using file1.pl :-
I want to retrieve the content of the hash table created above from another file named file2.pl :-
The problem is that if I separate like this into 2 files.Then it says that HASH table is not created.So can you please tell me how to... (2 Replies)
Hi, i want to implement hash table (put, get and transfer operations) using c in unix. so give some nice infromation on how to write my code. (1 Reply)
Hi,
I hope someone can help me with the following prob..
I need to implement a hashtable whose KEYs are strings and VLAUEs are
again hashtables.
ie key - is a string and value -is another hashtable .
So.... how am I supposed to be implementing my nested hashtable?
Thanks in advance (1 Reply)
hello,
i am new to scripting and would like to know how to return a hash table from a sub routine.
i tried the following,
my %hash_function = ();
hash_function = &return_hash();
sub return_hash
{
my %hash = ();
///populate the hash
return %hash;
}
but it dosent seem to... (1 Reply)
I was looking at this script and was wondering if anyone can explain what this script does and how does it work. Thank you for any help.
State* lookup(char* prefix, int create)
{
int i, h;
State *sp = NULL ;
h = hash(prefix);
for (sp = statetab; sp != NULL; sp... (14 Replies)
Hi, I have a hash of hash where it has
name, activities and count
i have data like this -
$result->{$name}->{$activities} = $value;
content of that are -
name - robert tom cat peter
activities - running, eating, sleeping , drinking, work
i need to print output as below
... (3 Replies)
Discussion started by: asak
3 Replies
LEARN ABOUT OSX
moose::cookbook::basics::recipe8
Moose::Cookbook::Basics::Recipe8(3) User Contributed Perl Documentation Moose::Cookbook::Basics::Recipe8(3)NAME
Moose::Cookbook::Basics::Recipe8 - Builder methods and lazy_build
VERSION
version 2.0205
SYNOPSIS
package BinaryTree;
use Moose;
has 'node' => (is => 'rw', isa => 'Any');
has 'parent' => (
is => 'rw',
isa => 'BinaryTree',
predicate => 'has_parent',
weak_ref => 1,
);
has 'left' => (
is => 'rw',
isa => 'BinaryTree',
predicate => 'has_left',
lazy => 1,
builder => '_build_child_tree',
);
has 'right' => (
is => 'rw',
isa => 'BinaryTree',
predicate => 'has_right',
lazy => 1,
builder => '_build_child_tree',
);
before 'right', 'left' => sub {
my ($self, $tree) = @_;
$tree->parent($self) if defined $tree;
};
sub _build_child_tree {
my $self = shift;
return BinaryTree->new( parent => $self );
}
DESCRIPTION
If you've already read Moose::Cookbook::Basics::Recipe3, then this example should look very familiar. In fact, all we've done here is
replace the attribute's "default" parameter with a "builder".
In this particular case, the "default" and "builder" options act in exactly the same way. When the "left" or "right" attribute is read,
Moose calls the builder method to initialize the attribute.
Note that Moose calls the builder method on the object which has the attribute. Here's an example:
my $tree = BinaryTree->new();
my $left = $tree->left();
When "$tree->left()" is called, Moose calls "$tree->_build_child_tree()" in order to populate the "left" attribute. If we had passed "left"
to the original constructor, the builder would not be called.
There are some differences between "default" and "builder". Notably, a builder is subclassable, and can be composed from a role. See
Moose::Manual::Attributes for more details.
The lazy_build shortcut
The "lazy_build" attribute option can be used as sugar to specify a whole set of attribute options at once:
has 'animal' => (
is => 'ro',
isa => 'Animal',
lazy_build => 1,
);
This is a shorthand for:
has 'animal' => (
is => 'ro',
isa => 'Animal',
required => 1,
lazy => 1,
builder => '_build_animal',
predicate => 'has_animal',
clearer => 'clear_animal',
);
If your attribute starts with an underscore, Moose is smart and will do the right thing with the "predicate" and "clearer", making them
both start with an underscore. The "builder" method always starts with an underscore.
You can read more about "lazy_build" in Moose::Meta::Attribute
CONCLUSION
The "builder" option is a more OO-friendly version of the "default" functionality. It also separates the default-generating code into a
well-defined method. Sprinkling your attribute definitions with anonymous subroutines can be quite ugly and hard to follow.
AUTHOR
Stevan Little <stevan@iinteractive.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2011 by Infinity Interactive, Inc..
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
perl v5.12.5 2011-09-06 Moose::Cookbook::Basics::Recipe8(3)