Core Function isVarClass

From Sputnik Wiki
(Difference between revisions)
Jump to: navigation, search
(Example)
Line 63: Line 63:
 
println( isVarClass($cat1, "vec3") ? "TRUE" : "FALSE" );
 
println( isVarClass($cat1, "vec3") ? "TRUE" : "FALSE" );
 
println( isVarClass($moo, "vec3") ? "TRUE" : "FALSE" );
 
println( isVarClass($moo, "vec3") ? "TRUE" : "FALSE" );
 +
</syntaxhighlight>
 +
 +
Alternative way to see if a variable contains a class object by name
 +
 +
<syntaxhighlight lang="sputnik">
 +
Class Vec3
 +
{
 +
my $x = 0;
 +
my $y = 0;
 +
my $z = 0;
 +
Function Vec3($x1 = 0, $y1 = 0, $z1 = 0)
 +
{
 +
$this->$x = (double)$x1;
 +
$this->$y = (double)$y1;
 +
$this->$z = (double)$z1;
 +
}
 +
};
 +
$cat1 = new Vec3(10, 20, 30);
 +
println( $cat1 ~~ Vec3 ? "TRUE" : "FALSE" );
 +
println( $moo ~~ Vec3 ? "TRUE" : "FALSE" );
 +
</syntaxhighlight>
 +
 +
Yet another alternative way to see if a variable contains a class object by name
 +
 +
<syntaxhighlight lang="sputnik">
 +
Class Vec3
 +
{
 +
my $x = 0;
 +
my $y = 0;
 +
my $z = 0;
 +
Function Vec3($x1 = 0, $y1 = 0, $z1 = 0)
 +
{
 +
$this->$x = (double)$x1;
 +
$this->$y = (double)$y1;
 +
$this->$z = (double)$z1;
 +
}
 +
};
 +
$cat1 = new Vec3(10, 20, 30);
 +
println( $cat1 is Vec3 ? "TRUE" : "FALSE" );
 +
println( $moo is Vec3 ? "TRUE" : "FALSE" );
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
[[Category:Core Function]]
 
[[Category:Core Function]]

Revision as of 14:26, 21 August 2013

isVarClass( $variable, <type> )

Contents

Description

Check if a variable's object type is a class.

Parameters

variable

The variable to check.

Return Value

Success: Returns 1.

Failure: Returns 0 if parameter is not an array variable.

Remarks

Can be useful to validate array/non-array parameters to user-defined functions.

Example

A simple example to see if a variable is a class variable :

Class Vec3
{
	my $x = 0;
	my $y = 0;
	my $z = 0;
	Function Vec3($x1 = 0, $y1 = 0, $z1 = 0)
	{
		$this->$x = (double)$x1;
		$this->$y = (double)$y1;
		$this->$z = (double)$z1;
	}
};
$cat1 = new Vec3(10, 20, 30);
println( isVarClass($cat1) ? "TRUE" : "FALSE" );
println( isVarClass($moo) ? "TRUE" : "FALSE" );

Same example but this time making sure the class is a vec3 and nothing else:

Class Vec3
{
	my $x = 0;
	my $y = 0;
	my $z = 0;
	Function Vec3($x1 = 0, $y1 = 0, $z1 = 0)
	{
		$this->$x = (double)$x1;
		$this->$y = (double)$y1;
		$this->$z = (double)$z1;
	}
};
$cat1 = new Vec3(10, 20, 30);
println( isVarClass($cat1, "vec3") ? "TRUE" : "FALSE" );
println( isVarClass($moo, "vec3") ? "TRUE" : "FALSE" );

Alternative way to see if a variable contains a class object by name

Class Vec3
{
	my $x = 0;
	my $y = 0;
	my $z = 0;
	Function Vec3($x1 = 0, $y1 = 0, $z1 = 0)
	{
		$this->$x = (double)$x1;
		$this->$y = (double)$y1;
		$this->$z = (double)$z1;
	}
};
$cat1 = new Vec3(10, 20, 30);
println( $cat1 ~~ Vec3 ? "TRUE" : "FALSE" );
println( $moo ~~ Vec3 ? "TRUE" : "FALSE" );

Yet another alternative way to see if a variable contains a class object by name

Class Vec3
{
	my $x = 0;
	my $y = 0;
	my $z = 0;
	Function Vec3($x1 = 0, $y1 = 0, $z1 = 0)
	{
		$this->$x = (double)$x1;
		$this->$y = (double)$y1;
		$this->$z = (double)$z1;
	}
};
$cat1 = new Vec3(10, 20, 30);
println( $cat1 is Vec3 ? "TRUE" : "FALSE" );
println( $moo is Vec3 ? "TRUE" : "FALSE" );
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox