package Ġcz . pe tr bal at . jp as pec ification . specification Ċ Ċ import Ġjavax . persistence . criteria . Criteria Builder Ċ import Ġjavax . persistence . criteria . Criteria Query Ċ import Ġjavax . persistence . criteria . Predicate Ċ import Ġjavax . persistence . criteria . Root Ċ Ċ @ Dsl Marker Ċ annotation Ġclass ĠCriteria Builder Dsl Ċ Ċ fun Ġ< T Ġ: ĠAny > Ġd sl ( root : ĠRoot < T >, Ġquery : ĠCriteria Query <* >, Ġcb : ĠCriteria Builder , Ġinit : ĠD sl Criteria Builder < T >. () Ġ-> ĠUnit ): ĠPredicate ? Ġ{ ĊĠĠĠ Ġval Ġbuilder Ġ= ĠD sl Criteria Builder < T >( root , Ġquery , Ġcb ) ĊĠĠĠ Ġbuilder . init () ĊĠĠĠ Ġreturn Ġbuilder . to Predicate () Ċ } Ċ