Creation/Dev/GScript3: Difference between revisions
No edit summary |
|||
Line 47: | Line 47: | ||
'''Example''' | '''Example''' | ||
echo("hello " '''@''' "world"); // "hello world" | echo("hello " '''@''' "world"); // "hello world" | ||
====as operator==== | |||
'''Usage''' | |||
''expression'' '''as''' ''target_type'' | |||
Converts the source type of ''expression'' to ''target_type''.<br/> | |||
The target type must be an object type, not a basic type like '''int''', '''number''', '''string'''.<br> | |||
Each type must either extend of be equal to the other type. | |||
'''Example''' | |||
class Animal {}; | |||
class Cat extends Animal {}; | |||
class Dog extends Animal {}; | |||
var cat : Cat = new Cat(); | |||
var dog : Dog = new Dog(); | |||
var cat_as_animal : Animal = cat as Animal; // OK as the Cat type extends the Animal type. | |||
var cat_as_cat : Cat = cat_as_animal as Cat; // OK as the Cat type extends the Animal type. | |||
var cat_as_dog : Dog = cat as Dog; // KO as the Cat type does not extend the Dog type. |
Revision as of 09:19, 5 June 2013
GScript3 is the latest version of the Graal's scripting language.
It introduces new syntax and semantic elements, and enable new features in Web browsers.
Language Elements
Operators
addition (+) operator
Usage
numeric_expression1 + numeric_expression2
Adds together numeric_expression1 and numeric_expression2.
Both expressions must be numeric (int or number types).
To concatenate strings, the append (@) operator must be used instead.
Example
echo(1 + 2); // 3 echo(1.5 + 2.25); // 3.75
addition assignment (+=) operator
Usage
numeric_expression1 += numeric_expression2
Puts the result of numeric_expression1 + numeric_expression2 into numeric_expression1.
Both expressions must be numeric (int or number types).
This is a direct equivalent of the following expression:
numeric_expression1 = numeric_expression1 + numeric_expression2
To concatenate strings, the append assignment (@=) operator must be used instead.
Example
var result : int = 10; result += 20; echo(result); // 30
append (@) operator
Usage
string_expression1 @ string_expression2
Concats together string_expression1 and string_expression2.
Both expressions must be string (string type).
To add numbers, the addition (+) operator must be used instead.
Example
echo("hello " @ "world"); // "hello world"
as operator
Usage
expression as target_type
Converts the source type of expression to target_type.
The target type must be an object type, not a basic type like int, number, string.
Each type must either extend of be equal to the other type.
Example
class Animal {}; class Cat extends Animal {}; class Dog extends Animal {}; var cat : Cat = new Cat(); var dog : Dog = new Dog(); var cat_as_animal : Animal = cat as Animal; // OK as the Cat type extends the Animal type. var cat_as_cat : Cat = cat_as_animal as Cat; // OK as the Cat type extends the Animal type. var cat_as_dog : Dog = cat as Dog; // KO as the Cat type does not extend the Dog type.