TypedMethodBuilder

fun TypedMethodBuilder(supertype: IrType, builder: IrBuilderWithScope, context: IrPluginContext)
fun TypedMethodBuilder(supertype: IrClassSymbol, builder: IrBuilderWithScope, context: IrPluginContext)
fun TypedMethodBuilder(supertype: ClassRef, builder: IrBuilderWithScope, context: IrPluginContext)
fun TypedMethodBuilder(supertype: IrClass, builder: IrBuilderWithScope, context: IrPluginContext)
fun TypedMethodBuilder(typeCheck: (IrType) -> Boolean, builder: IrBuilderWithScope, context: IrPluginContext, message: (IrExpression) -> String = { "Expression $it did not pass type check, type was ${it.type}" })