Package com.embabel.agent.api.dsl
Class TypedAgentScopeBuilderKt
-
- All Implemented Interfaces:
public final class TypedAgentScopeBuilderKt
-
-
Method Summary
Modifier and Type Method Description final static <A extends Any, B extends Any> TypedAgentScopeBuilder<Unit>doSplit(Function1<InputActionContext<A>, List<B>> splitter)final static <A extends Any, B extends Any> TypedAgentScopeBuilder<Unit>doSplit(Function1<InputActionContext<A>, List<B>> splitter, Class<A> aClass, Class<B> bClass)final static <A extends Any, B extends Any> TypedAgentScopeBuilder<Unit>split(Function1<A, List<B>> splitter)final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C>andThenDo(Function1<A, B> $self, Function1<InputActionContext<B>, C> that)final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C>andThen(Function1<A, B> $self, Function1<B, C> that)final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C>andThen(Function<A, B> $self, Function<InputActionContext<B>, C> that)final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C>andThen(Function<InputActionContext<A>, B> $self, Function<InputActionContext<B>, C> that, Class<A> aClass, Class<B> bClass, Class<C> cClass)final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C>javaAndThen(Function<InputActionContext<A>, B> $self, Function<InputActionContext<B>, C> that)final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C>chain(Function1<InputActionContext<A>, B> a, Function1<InputActionContext<B>, C> b, Class<A> aClass, Class<B> bClass, Class<C> cClass)Creates a chain from A to B via C. final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C>chain(Function1<InputActionContext<A>, B> a, Function1<InputActionContext<B>, C> b)Convenience method to chain A to B via C using Kotlin reified types. final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<Branch<B, C>>branch(Function1<InputActionContext<A>, Branch<B, C>> a, Class<A> aClass, Class<B> bClass, Class<C> cClass)Branch from A to B or C using Kotlin reified types. final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<Branch<B, C>>branch(Function1<InputActionContext<A>, Branch<B, C>> a)Convenience method to branch from A to B or C using Kotlin reified types. final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C>aggregate(List<Function1<InputActionContext<A>, B>> transforms, Function2<List<B>, OperationContext, C> merge, Class<A> aClass, Class<B> bClass, Class<C> cClass)final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C>aggregate(List<Function1<InputActionContext<A>, B>> transforms, Function2<List<B>, OperationContext, C> merge)Run all the transforms and merge the results. final static <A1 extends Any, A2 extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C>biAggregate(List<Function1<BiInputActionContext<A1, A2>, B>> transforms, Function1<List<B>, C> merge, Class<A1> a1Class, Class<A2> a2Class, Class<B> bClass, Class<C> cClass)Aggregate taking 2 inputs final static <A1 extends Any, A2 extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C>biAggregate(List<Function1<BiInputActionContext<A1, A2>, B>> transforms, Function1<List<B>, C> merge)final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C>repeatableAggregate(C startWith, List<Function1<BiInputActionContext<A, C>, B>> transforms, Function1<List<B>, C> merge)Special aggregate that works like an accumulator. final static <C extends Any> TypedAgentScopeBuilder<C>repeat(Function0<TypedAgentScopeBuilder<C>> what, Function2<C, OperationContext, Boolean> until, Class<C> cClass)final static <C extends Any> TypedAgentScopeBuilder<C>repeat(Function0<TypedAgentScopeBuilder<C>> what, Function2<C, OperationContext, Boolean> until)final static <I extends Any, O extends Any> OrunAgent(Agent agent, TransformationActionContext<I, O> context)-
-
Method Detail
-
doSplit
final static <A extends Any, B extends Any> TypedAgentScopeBuilder<Unit> doSplit(Function1<InputActionContext<A>, List<B>> splitter)
-
doSplit
final static <A extends Any, B extends Any> TypedAgentScopeBuilder<Unit> doSplit(Function1<InputActionContext<A>, List<B>> splitter, Class<A> aClass, Class<B> bClass)
-
split
final static <A extends Any, B extends Any> TypedAgentScopeBuilder<Unit> split(Function1<A, List<B>> splitter)
-
andThenDo
final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C> andThenDo(Function1<A, B> $self, Function1<InputActionContext<B>, C> that)
-
andThen
final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C> andThen(Function1<A, B> $self, Function1<B, C> that)
-
andThen
final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C> andThen(Function<A, B> $self, Function<InputActionContext<B>, C> that)
-
andThen
final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C> andThen(Function<InputActionContext<A>, B> $self, Function<InputActionContext<B>, C> that, Class<A> aClass, Class<B> bClass, Class<C> cClass)
-
javaAndThen
final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C> javaAndThen(Function<InputActionContext<A>, B> $self, Function<InputActionContext<B>, C> that)
-
chain
final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C> chain(Function1<InputActionContext<A>, B> a, Function1<InputActionContext<B>, C> b, Class<A> aClass, Class<B> bClass, Class<C> cClass)
Creates a chain from A to B via C. Emits actions.
-
chain
final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C> chain(Function1<InputActionContext<A>, B> a, Function1<InputActionContext<B>, C> b)
Convenience method to chain A to B via C using Kotlin reified types.
-
branch
final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<Branch<B, C>> branch(Function1<InputActionContext<A>, Branch<B, C>> a, Class<A> aClass, Class<B> bClass, Class<C> cClass)
Branch from A to B or C using Kotlin reified types. Makes conditionals easy to express.
-
branch
final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<Branch<B, C>> branch(Function1<InputActionContext<A>, Branch<B, C>> a)
Convenience method to branch from A to B or C using Kotlin reified types.
-
aggregate
final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C> aggregate(List<Function1<InputActionContext<A>, B>> transforms, Function2<List<B>, OperationContext, C> merge, Class<A> aClass, Class<B> bClass, Class<C> cClass)
-
aggregate
final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C> aggregate(List<Function1<InputActionContext<A>, B>> transforms, Function2<List<B>, OperationContext, C> merge)
Run all the transforms and merge the results.
-
biAggregate
final static <A1 extends Any, A2 extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C> biAggregate(List<Function1<BiInputActionContext<A1, A2>, B>> transforms, Function1<List<B>, C> merge, Class<A1> a1Class, Class<A2> a2Class, Class<B> bClass, Class<C> cClass)
Aggregate taking 2 inputs
-
biAggregate
final static <A1 extends Any, A2 extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C> biAggregate(List<Function1<BiInputActionContext<A1, A2>, B>> transforms, Function1<List<B>, C> merge)
-
repeatableAggregate
final static <A extends Any, B extends Any, C extends Any> TypedAgentScopeBuilder<C> repeatableAggregate(C startWith, List<Function1<BiInputActionContext<A, C>, B>> transforms, Function1<List<B>, C> merge)
Special aggregate that works like an accumulator. If the condition is not satisfied, your transformer methods will be called again with the latest updated context.
-
repeat
final static <C extends Any> TypedAgentScopeBuilder<C> repeat(Function0<TypedAgentScopeBuilder<C>> what, Function2<C, OperationContext, Boolean> until, Class<C> cClass)
-
repeat
final static <C extends Any> TypedAgentScopeBuilder<C> repeat(Function0<TypedAgentScopeBuilder<C>> what, Function2<C, OperationContext, Boolean> until)
-
runAgent
final static <I extends Any, O extends Any> O runAgent(Agent agent, TransformationActionContext<I, O> context)
-
-
-
-