src/main/java/org/michailov/async/io/AsyncTextStreamWriter.java
@Override
    protected boolean ready() {
        boolean isReady = false;
        
        try {
            if (!_areLoopsStarted) {
                _asyncLineJoiner.startApplyLoopAsync();
                _asyncCharEncoder.startApplyLoopAsync();
                _asyncByteStreamWriter.startApplyLoopAsync();
                _areLoopsStarted = true;
            }
            
            isReady = !isEOF() || !isEmpty();
        }
        catch (Throwable ex) {
            setEOFAndThrow(ex);
        }
        
        return isReady;
    }
/**
     * "<i>ready</i>" predicate that returns true when lines can be written to the string ring buffer.   
     */
"ready" predicate that returns true when lines can be written to the string ring buffer.
" ready " predicate that returns true when lines can be written to the string ring buffer .
@Override
    protected boolean ready() {
        boolean isReady = false;
        try {
            if (!_areLoopsStarted) {
                _asyncLineJoiner.startApplyLoopAsync();
                _asyncCharEncoder.startApplyLoopAsync();
                _asyncByteStreamWriter.startApplyLoopAsync();
                _areLoopsStarted = true;
            }
            isReady = !isEOF() || !isEmpty();
        }
        catch (Throwable ex) {
            setEOFAndThrow(ex);
        }
        return isReady;
    }
@ Override protected boolean ready ( ) { boolean isReady = false ; try { if ( ! _areLoopsStarted ) { _asyncLineJoiner . startApplyLoopAsync ( ) ; _asyncCharEncoder . startApplyLoopAsync ( ) ; _asyncByteStreamWriter . startApplyLoopAsync ( ) ; _areLoopsStarted = true ; } isReady = ! isEOF ( ) || ! isEmpty ( ) ; } catch ( Throwable ex ) { setEOFAndThrow ( ex ) ; } return isReady ; }
"<i>ready</i>" predicate that returns true when lines can be written to the string ring buffer.
" <i > ready< / i > " predicate that returns true when lines can be written to the string ring buffer .