package Ġcom . dt b . core . common . validate ; Ċ Ċ import Ġcom . dt b . core . common . validate . I Validate Ċ import Ġcom . dt b . core . common . validate . Validate Base Ċ Ċ class ĠValidate Int ( parameter : ĠInt ?, Ġdef _ func : Ġ(() Ġ-> ĠUnit )? ) Ġ: ĊĠĠĠĠĠĠĠ ĠValidate Base < Int >( parameter , Ġdef _ func ) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠisEmpty ( block : ĠBoolean , Ġfunc : Ġ(() Ġ-> ĠUnit )? ): ĠI Validate < Int >? Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( parameter Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġtest Failed ( block , Ġfunc ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġis NotEmpty ( block : ĠBoolean , Ġfunc : Ġ(() Ġ-> ĠUnit )? ): ĠI Validate < Int >? Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( parameter Ġ!= Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġtest Failed ( block , Ġfunc ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġis L arger ( block : ĠBoolean , Ġother : ĠInt , Ġfunc : Ġ(() Ġ-> ĠUnit )? ): ĠI Validate < Int >? Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( parameter !! Ġ> Ġother ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġtest Failed ( block , Ġfunc ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġis Less ( block : ĠBoolean , Ġother : ĠInt , Ġfunc : Ġ(() Ġ-> ĠUnit )? ): ĠI Validate < Int >? Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( parameter !! Ġ< Ġother ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġtest Failed ( block , Ġfunc ) ĊĠĠĠ Ġ} Ċ } ĊĊĊĊ