public boolean isEMPTYlist(int accessor) {
    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.entry(this, tc, "isEMPTYlist", accessor);

    boolean isEMPTY = false;

    // We are only interested in 'real' fields, not boxed variants etc
    if (accessor < cacheSize) {
      checkIndex(accessor);

      synchronized (getMessageLockArtefact()) {

        // We can only have an EMPTY singleton for the field if it is in the cache,
        // as anything which is (still) assembled can't be an EMPTY.
        // (Also, a false negative is harmless, whereas a false positive can lead to errors.)
        if (cache != null) {
          Object val = cache[accessor];
          // If the value is in the cache then see if it is an EMPTY singleton
          if (  (val == JSVaryingListImpl.EMPTY_UNBOXED_VARYINGLIST)
             || (val == JSFixedListImpl.EMPTY_FIXEDLIST)
             ) {
            isEMPTY = true;
          }
        }
      }
    }

    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(this, tc, "isEMPTYlist",  isEMPTY);
    return isEMPTY;
  }
public boolean isEMPTYlist ( int accessor ) { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . entry ( this , tc , "isEMPTYlist" , accessor ) ; boolean isEMPTY = false ; if ( accessor < cacheSize ) { checkIndex ( accessor ) ; synchronized ( getMessageLockArtefact ( ) ) { if ( cache != null ) { Object val = cache [ accessor ] ; if ( ( val == JSVaryingListImpl . EMPTY_UNBOXED_VARYINGLIST ) || ( val == JSFixedListImpl . EMPTY_FIXEDLIST ) ) { isEMPTY = true ; } } } } if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( this , tc , "isEMPTYlist" , isEMPTY ) ; return isEMPTY ; }
/*
isEMPTYlist
Return true if the value of the given field is one of the singleton
EMPTY lists, otherwise false.
See JMFMessage for javadoc description.