Used

The Used aspect can be applied to a type to indicate it will be used indirectly, and should not be eliminated by the linker when it finds no direct references to it. This is commonly needed when classes are discovered and instantiated dynamically at runtime – for example by a library such as EUnit which checks all globally defined classes for unit tests to run.

Island Only

The Used aspect is available on the Island platform only.
(On Cocoa, Used is implied, as the linker never eliminate classes).

type
  [Used]
  MyProperties = public class 
  public
  end;
[Used]
public class MyClass
{
}
@Used public class MyClass {

}
@Used public class MyClass {

}