/** * If specimen is null, returns null. Otherwise passes it to my wrapped Guard, if there is one. */ public Object coerce(Object specimen, OneArgFunc optEjector) { // shorten first specimen = Ref.resolution(specimen); if (null == specimen) { return null; } else if (null == myOptSubGuard) { throw Thrower.toEject(optEjector, "must be null"); } else { return myOptSubGuard.coerce(specimen, optEjector); } }