public static < T > MonadicObservableValue < T > monadic ( ObservableValue < T > o ) { if ( o instanceof MonadicObservableValue ) { return ( MonadicObservableValue < T > ) o ; } else { return new MonadicWrapper <> ( o ) ; } }
Creates a thin wrapper around an observable value to make it monadic .