Satisfied Interfaces: Callable<Type,Arguments>, ClassModel<Type,Arguments>, ClassOrInterface<Type>, Generic, Model, Type<Type>

A class model represents the model of a Ceylon class that you can instantiate and inspect.

A class is a toplevel type, declared on a package.

This is a ClassModel that you can also invoke to instantiate new instances of the class:

    shared class Foo(String name){
        shared String hello => "Hello "+name;
    }

    void test(){
        Class<Foo,[String]> c = `Foo`;
        // This will print: Hello Stef
        print(c("Stef").hello);
    }

Inherited Attributes
Attributes inherited from: Object hash, string
Attributes inherited from: ClassModel<Type,Arguments> parameterTypes
Attributes inherited from: ClassOrInterface<Type> extendedType, satisfiedTypes
Attributes inherited from: Generic typeArguments
Attributes inherited from: Model container, declaration

Methods
apply | Source Code shared formal Type apply(Anything[] arguments) Type-unsafe initialiser application, to be used when the argument types are unknown until runtime. This has the same behaviour as invoking this `Class` directly, but exchanges compile-time type safety with runtime checks. Throws: IncompatibleTypeException If any argument is not assignable to this initialiser's corresponding parameter InvocationException If there are not enough or too many provided arguments

Inherited Methods
Methods inherited from: Object equals
Methods inherited from: ClassOrInterface<Type> getAttribute, getClass, getClassOrInterface, getDeclaredAttribute, getDeclaredClass, getDeclaredClassOrInterface, getDeclaredInterface, getDeclaredMethod, getInterface, getMethod
Methods inherited from: Type<Type> exactly, subtypeOf, supertypeOf, typeOf