Curso de Raku / Objetos, entrada/salida y excepciones / Clases y objetos / Clases / Exercises / Nombre el tipo

Solución: Nombre el tipo

Aquí tienes una posible solución para la tarea.

Código

class Cat {
}

class Dog {
}

my $felix = Cat.new;

say $felix.WHAT;
say $felix.WHAT === Cat.WHAT;
say $felix.WHAT === Dog.WHAT;

🦋 Puedes encontrar el código fuente en el archivo name-the-type.raku.

Salida

(Cat)
True
False

Comentarios

  1. WHAT devuelve el objeto de tipo, mostrado entre paréntesis como (Cat): $felix es un Cat.

  2. === compara dos objetos de tipo por identidad. $felix.WHAT === Cat.WHAT es True porque Felix realmente es un Cat, mientras que $felix.WHAT === Dog.WHAT es False: un Cat y un Dog son tipos distintos, así que sus objetos de tipo no coinciden.

Nombre el tipo   |   Atributos