adds given metadata value only if it was absent . concode_field_sep int key concode_elem_sep Object[] data concode_field_sep V addMeta concode_elem_sep void removeAllMeta concode_elem_sep void writeExternalMeta concode_elem_sep void readExternalMeta concode_elem_sep void copyMeta concode_elem_sep void copyMeta concode_elem_sep V meta concode_elem_sep Object[] allMeta concode_elem_sep boolean hasMeta concode_elem_sep boolean hasMeta concode_elem_sep Object clone concode_elem_sep boolean replaceMeta concode_elem_sep V putMetaIfAbsent concode_elem_sep int key concode_elem_sep V removeMeta concode_elem_sep boolean removeMeta
V function ( int arg0 , @ Nullable Callable < V > arg1 ) { assert arg1 != null ; synchronized ( this ) { V loc0 = ( V ) meta ( arg0 ) ; if ( loc0 == null && arg1 != null ) try { addMeta ( arg0 , loc0 = arg1 . call ( ) ) ; } catch ( Exception loc1 ) { throw F . wrap ( loc1 ) ; } return loc0 ; } }