Sintaxe para Casting

Implementamos uma sintaxe especial para facilitar a transição de tipos de dados. Por padrão, os tipos suportados atualmente são Str, Int e Number.

De maneira similar a generics em C#, os tipos são aplicados dentro de tags.

Definição Formal

casting ::= @Cast\< <type> \> <expr>

Exemplos

1
2
3
4
5
6
7
#include "prelude.ch"

Function TestCasting()
   Local nStrToNumber := @Cast<Int> "18" ; // => 18 
       , cNumberToStr := @Cast<Str> 19   ; // => "19"
       , nFloatToInt  := @Cast<Num> 15.4   // => 15
   Return 0