class

Crystal::Macros::Generic

Inherits Crystal::Macros::ASTNode

A generic instantiation, like Foo(T) or Foo::Bar::Baz(T)

Instance methods

name

Returns the path to the generic.

Source
named_args

Returns the named arguments of this instantiation, if any.

Source
resolve

Resolves this generic to a TypeNode if it denotes a type, or otherwise gives a compile-time error.

Source
resolve?

Resolves this path to a TypeNode if it denotes a type, or otherwise returns a NilLiteral.

Source
type_vars

Returns the arguments (the type variables) of this instantiation.

Source
types

Returns this generic inside an array literal. This method exists so you can call types on the type of a type declaration and get all types, whether it's a Generic, Path or Union.

Source