package Ġcom . z ch u . rx cache . kotlin Ċ Ċ import Ġcom . google . gson . reflect . Type Token Ċ import Ġcom . z ch u . rx cache . Rx Cache Ċ import Ġcom . z ch u . rx cache . data . Cache Result Ċ import Ġcom . z ch u . rx cache . state gy . IF low able Strategy Ċ import Ġcom . z ch u . rx cache . state gy . I Observable Strategy Ċ import Ġio . reactivex .* Ċ Ċ inline Ġfun Ġ< re ified ĠT > ĠRx Cache . load ( key : ĠString ): ĠObservable < Cache Result < T >> Ġ{ ĊĠĠĠ Ġreturn Ġload < T >( key , Ġobject Ġ: ĠType Token < T >() Ġ{} . type ) Ċ } Ċ Ċ inline Ġfun Ġ< re ified ĠT > ĠRx Cache . load 2 Flow able ( key : ĠString ): ĠFlow able < Cache Result < T >> Ġ{ ĊĠĠĠ Ġreturn Ġload 2 Flow able ( key , Ġobject Ġ: ĠType Token < T >() Ġ{} . type , ĠBack pressure Strategy . LATE ST ) Ċ } Ċ Ċ inline Ġfun Ġ< re ified ĠT > ĠRx Cache . load 2 Flow able ( key : ĠString , Ġback pressure Strategy : ĠBack pressure Strategy ): ĠFlow able < Cache Result < T >> Ġ{ ĊĠĠĠ Ġreturn Ġload 2 Flow able ( key , Ġobject Ġ: ĠType Token < T >() Ġ{} . type , Ġback pressure Strategy ) Ċ } Ċ Ċ inline Ġfun Ġ< re ified ĠT > ĠRx Cache . transform Observable ( key : ĠString , Ġstrategy : ĠI Observable Strategy ): ĠObservable Transformer < T , ĠCache Result < T >> Ġ{ ĊĠĠĠ Ġreturn Ġtransform Observable ( key , Ġobject Ġ: ĠType Token < T >() Ġ{} . type , Ġstrategy ) Ċ } Ċ Ċ inline Ġfun Ġ< re ified ĠT > ĠRx Cache . transform Flow able ( key : ĠString , Ġstrategy : ĠI Flow able Strategy ): ĠFlow able Transformer < T , ĠCache Result < T >> Ġ{ ĊĠĠĠ Ġreturn Ġtransform Flow able ( key , Ġobject Ġ: ĠType Token < T >() Ġ{} . type , Ġstrategy ) Ċ } ĊĊ Ċ inline Ġfun Ġ< re ified ĠT > ĠObservable < T >. rx Cache ( key : ĠString , Ġstrategy : ĠI Observable Strategy ): ĠObservable < Cache Result < T >> Ġ{ ĊĠĠĠ Ġreturn Ġthis . rx Cache ( Rx Cache . getDefault (), Ġkey , Ġstrategy ) Ċ } Ċ Ċ inline Ġfun Ġ< re ified ĠT > ĠObservable < T >. rx Cache ( rx Cache : ĠRx Cache , Ġkey : ĠString , Ġstrategy : ĠI Observable Strategy ): ĠObservable < Cache Result < T >> Ġ{ ĊĠĠĠ Ġreturn Ġthis . compose < Cache Result < T >>( rx Cache . transform Observable ( key , Ġobject Ġ: ĠType Token < T >() Ġ{} . type , Ġstrategy )) Ċ } Ċ Ċ inline Ġfun Ġ< re ified ĠT > ĠFlow able < T >. rx Cache ( key : ĠString , Ġstrategy : ĠI Flow able Strategy ): ĠFlow able < Cache Result < T >> Ġ{ ĊĠĠĠ Ġreturn Ġthis . rx Cache ( Rx Cache . getDefault (), Ġkey , Ġstrategy ) Ċ } Ċ Ċ inline Ġfun Ġ< re ified ĠT > ĠFlow able < T >. rx Cache ( rx Cache : ĠRx Cache , Ġkey : ĠString , Ġstrategy : ĠI Flow able Strategy ): ĠFlow able < Cache Result < T >> Ġ{ ĊĠĠĠ Ġreturn Ġthis . compose < Cache Result < T >>( rx Cache . transform Flow able ( key , Ġobject Ġ: ĠType Token < T >() Ġ{} . type , Ġstrategy )) Ċ } ĊĊĊĊĊĊĊ