net.corda.node.services.messaging / startFlow

# startFlow

`inline fun <T : Any, reified R : FlowLogic<T>> CordaRPCOps.startFlow(flowConstructor: () -> R): <ERROR CLASS>`

These allow type safe invocations of flows from Kotlin, e.g.:

val rpc: CordaRPCOps = (..) rpc.startFlow(::ResolveTransactionsFlow, setOf(), aliceIdentity)

Note that the passed in constructor function is only used for unification of other type parameters and reification of the Class instance of the flow. This could be changed to use the constructor function directly.

`inline fun <T : Any, A, reified R : FlowLogic<T>> CordaRPCOps.startFlow(flowConstructor: (A) -> R, arg0: A): <ERROR CLASS>`
`inline fun <T : Any, A, B, reified R : FlowLogic<T>> CordaRPCOps.startFlow(flowConstructor: (A, B) -> R, arg0: A, arg1: B): <ERROR CLASS>`
`inline fun <T : Any, A, B, C, reified R : FlowLogic<T>> CordaRPCOps.startFlow(flowConstructor: (A, B, C) -> R, arg0: A, arg1: B, arg2: C): <ERROR CLASS>`
`inline fun <T : Any, A, B, C, D, reified R : FlowLogic<T>> CordaRPCOps.startFlow(flowConstructor: (A, B, C, D) -> R, arg0: A, arg1: B, arg2: C, arg3: D): <ERROR CLASS>`