package Ġch . u zh . ifi . se al . bench er . analysis . finder Ċ Ċ import Ġarrow . core . Either Ċ import Ġch . u zh . ifi . se al . bench er .* Ċ import Ġch . u zh . ifi . se al . bench er . execution . Execution Configuration Ċ import Ġcom . ibm . w ala . class Loader . I Method Ċ Ċ interface ĠMethod Finder < out ĠT Ġ: ĠMethod > Ġ{ ĊĠĠĠ Ġfun Ġall (): ĠEither < String , ĠList < T >> Ċ } Ċ Ċ interface ĠBenchmark Finder Ġ: ĠMethod Finder < Benchmark > Ġ{ ĊĠĠĠ Ġfun Ġsetup s ( b : ĠBenchmark ): ĠCollection < Setup Method > ĊĠĠĠ Ġfun ĠtearDown s ( b : ĠBenchmark ): ĠCollection < Tear Down Method > ĊĠĠĠ Ġfun Ġbenchmark Execution Infos (): ĠEither < String , ĠMap < Benchmark , ĠExecution Configuration >> ĊĠĠĠ Ġfun Ġclass Execution Infos (): ĠEither < String , ĠMap < Class , ĠExecution Configuration >> ĊĠĠĠ Ġfun Ġj mh Param Source ( b : ĠBenchmark ): ĠMap < String , ĠString > ĊĠĠĠ Ġfun Ġstate Obj (): ĠEither < String , ĠMap < String , ĠMap < String , ĠMutable List < String >>>> Ċ } Ċ Ċ interface ĠB ench er W ala Method Finder < out ĠT Ġ: ĠMethod > Ġ: ĠMethod Finder < T > Ġ{ ĊĠĠĠ Ġfun Ġbench er W ala Methods (): ĠEither < String , ĠList < Pair < T , ĠI Method ? >>> Ċ } Ċ Ċ class ĠIterable Method Finder < out ĠT Ġ: ĠMethod >( ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġmethods : ĠIterable < T >, ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġinclude No Methods : ĠBoolean Ġ= Ġfalse Ċ ) Ġ: ĠMethod Finder < T > Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġall (): ĠEither < String , ĠList < T >> Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEither . Right ( methods . filter Ġ{ Ġ( it Ġ!= ĠNo Method ) Ġ|| Ġinclude No Methods Ġ}) Ċ } Ċ Ċ interface ĠMethod Meta Infos Ġ{ ĊĠĠĠ Ġfun Ġmethod Hashes (): ĠEither < String , ĠMap < Method , ĠByteArray >> ĊĠĠĠ Ġfun Ġmethod NumberOf Lines (): ĠEither < String , ĠMap < Method , ĠInt >> Ċ }