Annotation Type BinaryName


  • @Documented
    @Retention(RUNTIME)
    @Target({TYPE_USE,TYPE_PARAMETER})
    @SubtypeOf(BinaryNameOrPrimitiveType.class)
    public @interface BinaryName
    Represents a binary name as defined in the Java Language Specification, section 13.1.

    For example, in

      package org.checkerframework.checker.signature;
      public class SignatureChecker {
        private class Inner {}
      }
     
    the binary names for the two types are org.checkerframework.checker.signature.SignatureChecker and org.checkerframework.checker.signature.SignatureChecker$Inner.

    Binary names and internal form only differ by the use of '.' vs. '/' as package separator.

    The binary name should not be confused with the internal form, which is a variant of the binary name that actually appears in the class file.

    See the Checker Framework Manual:
    Signature Checker