ใ‚คใƒณใ‚ฟใƒ•ใ‚งใƒผใ‚นใฎๅž‹


public interface Types
ๅž‹ใงๆ“ไฝœใ‚’่กŒใ†ใŸใ‚ใฎใƒฆใƒผใƒ†ใ‚ฃใƒชใƒ†ใ‚ฃใƒปใƒกใ‚ฝใƒƒใƒ‰ใงใ™ใ€‚ ใปใจใ‚“ใฉใฎใƒกใ‚ฝใƒƒใƒ‰ใฏใ€ใ€Œใƒ—ใƒชใƒŸใƒ†ใ‚ฃใƒ–ๅž‹ใ€ใ€ใ€Œๅ‚็…งใ‚ฟใ‚คใƒ—ใ€ (ใ€Œ้…ๅˆ—ๅž‹ใ€ใŠใ‚ˆใณใ€Œnullใ‚ฟใ‚คใƒ—ใ€ใ‚’ๅซใ‚€)ใ€ใ€Œไบคๅทฎใ‚ฟใ‚คใƒ—ใ€ใ€ใŠใ‚ˆใณๆ“ฌไผผๅž‹voidใงๅ‹•ไฝœใ—ใพใ™ใ€‚ ใ€ŒๅฎŸ่กŒๅฏ่ƒฝใƒ•ใ‚กใ‚คใƒซใฎใ‚ฟใ‚คใƒ—ใ€ใŠใ‚ˆใณpackagesใŠใ‚ˆใณmodulesใฎๆ“ฌไผผๅž‹ใฏใ€้€šๅธธใ€ใ“ใ‚Œใ‚‰ใฎใƒกใ‚ฝใƒƒใƒ‰ใฎ็ฏ„ๅ›ฒๅค–ใงใ™ใ€‚ ใ‚นใ‚ณใƒผใƒ—ๅค–ใฎๅผ•ๆ•ฐใŒ1ใคไปฅไธŠใ‚ใ‚‹ใจใ€้€šๅธธใ€ใƒกใ‚ฝใƒƒใƒ‰ใŒIllegalArgumentExceptionใ‚’ใ‚นใƒญใƒผใ—ใพใ™ใ€‚

ใƒกใ‚ฝใƒƒใƒ‰ใŒใƒŸใƒฉใƒผๅž‹ใพใŸใฏใƒŸใƒฉใƒผๅž‹ใฎใ‚ณใƒฌใ‚ฏใ‚ทใƒงใƒณใ‚’่ฟ”ใ™ๅ ดๅˆใ€ๅž‹ใƒŸใƒฉใƒผใฏใ€็‰นใซๆ˜Ž่จ˜ใ•ใ‚Œใฆใ„ใชใ„ใ‹ใŽใ‚Šใ€ๅž‹ๆณจ้‡ˆใฎใชใ„ๅž‹ใ‚’่กจใ—ใพใ™ใ€‚

ไบ’ๆ›ๆ€งใซ้–ขใ™ใ‚‹ใƒŽใƒผใƒˆ: ใƒ—ใƒฉใƒƒใƒˆใƒ•ใ‚ฉใƒผใƒ ใฎๅฐ†ๆฅใฎใƒชใƒชใƒผใ‚นใงใฏใ€ใ“ใฎใ‚คใƒณใ‚ฟใƒ•ใ‚งใƒผใ‚นใซใƒกใ‚ฝใƒƒใƒ‰ใŒ่ฟฝๅŠ ใ•ใ‚Œใ‚‹ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚

APIใฎใƒŽใƒผใƒˆ:
ใƒชใƒ•ใ‚กใƒฌใƒณใ‚นๅฎŸ่ฃ…ใงใฏใ€้€šๅธธใ€ใ€Œใ‚จใƒฉใƒผใƒปใ‚ฟใ‚คใƒ—ใ€ใ‚’ๅ‡ฆ็†ใ—ใฆใ‚‚ใ€ใ“ใฎใ‚คใƒณใ‚ฟใƒ•ใ‚งใƒผใ‚นใฎใƒกใ‚ฝใƒƒใƒ‰ใ‹ใ‚‰ใฎ IllegalArgumentExceptionใฏ็™บ็”Ÿใ—ใพใ›ใ‚“ใ€‚
ๅฐŽๅ…ฅใ•ใ‚ŒใŸใƒใƒผใ‚ธใƒงใƒณ:
1.6
้–ข้€ฃ้ …็›ฎ:
  • ใƒกใ‚ฝใƒƒใƒ‰ใฎใ‚ตใƒžใƒชใƒผ

    ไฟฎ้ฃพๅญใจๅž‹
    ใƒกใ‚ฝใƒƒใƒ‰
    ่ชฌๆ˜Ž
    ๅž‹ใซๅฏพๅฟœใ™ใ‚‹่ฆ็ด ใ‚’่ฟ”ใ—ใพใ™ใ€‚
    asMemberOf(DeclaredType containing, Element element)
    ๆŒ‡ๅฎšใ•ใ‚ŒใŸๅž‹ใฎใƒกใƒณใƒใƒผใจใ—ใฆ่ฆ็ด ใŒๅ‚็…งใ•ใ‚Œใ‚‹ๅ ดๅˆใ€ใ‚ใ‚‹ใ„ใฏๆŒ‡ๅฎšใ•ใ‚ŒใŸๅž‹ใซ็›ดๆŽฅๅŒ…ๅซใ•ใ‚Œใ‚‹ใƒกใƒณใƒใƒผใจใ—ใฆ่ฆ็ด ใŒๅ‚็…งใ•ใ‚Œใ‚‹ๅ ดๅˆใ€่ฆ็ด ใฎๅž‹ใ‚’่ฟ”ใ—ใพใ™ใ€‚
    ใƒ—ใƒชใƒŸใƒ†ใ‚ฃใƒ–ๅž‹ๅผ•ๆ•ฐใฎใƒœใƒƒใ‚ฏใ‚นๅ€คใฎใ‚ฏใƒฉใ‚นใ‚’่ฟ”ใ—ใพใ™ใ€‚
    ๅž‹ใซๅ–ๅพ—ๅค‰ๆ›ใ‚’้ฉ็”จใ—ใพใ™ใ€‚
    boolean
    ใ‚ใ‚‹ๅž‹ๅผ•ๆ•ฐใ‚’ๅˆฅใฎๅž‹ใซๅŒ…ๅซใงใใ‚‹ใ‹ใฉใ†ใ‹ใ‚’ใƒ†ใ‚นใƒˆใ—ใพใ™ใ€‚
    List<? extends TypeMirror>
    ๅž‹ใฎ็›ดๆŽฅใฎใ‚นใƒผใƒ‘ใƒผใƒปใ‚ฟใ‚คใƒ—ใ‚’่ฟ”ใ—ใพใ™ใ€‚
    ๅž‹ใฎๆถˆๅŽปใ‚’่ฟ”ใ—ใพใ™ใ€‚
    getArrayType(TypeMirror componentType)
    ๆŒ‡ๅฎšใ•ใ‚ŒใŸใ‚ณใƒณใƒใƒผใƒใƒณใƒˆๅž‹ใจใจใ‚‚ใซ้…ๅˆ—ๅž‹ใ‚’่ฟ”ใ—ใพใ™ใ€‚
    getDeclaredType(TypeElement typeElem, TypeMirror... typeArgs)
    ๅž‹่ฆ็ด ใจๅฎŸ้š›ใฎๅž‹ๅผ•ๆ•ฐใซๅฏพๅฟœใ™ใ‚‹ๅž‹ใ‚’่ฟ”ใ—ใพใ™ใ€‚
    getDeclaredType(DeclaredType containing, TypeElement typeElem, TypeMirror... typeArgs)
    ใƒกใƒณใƒใƒผใงใ‚ใ‚‹ๅž‹ใฎๅŒ…ๅซๅž‹ใ‚’ๆŒ‡ๅฎšใ™ใ‚‹ใจใ€ๅž‹่ฆ็ด ใจๅฎŸ้š›ใฎๅž‹ๅผ•ๆ•ฐใซๅฏพๅฟœใ™ใ‚‹ๅž‹ใ‚’่ฟ”ใ—ใพใ™ใ€‚
    ้ฉๅˆ‡ใชๅฎŸ้š›ใฎๅž‹ใŒๅญ˜ๅœจใ—ใชใ„ๅ ดๅˆใซไฝฟ็”จใ•ใ‚Œใ‚‹ๆ“ฌไผผๅž‹ใ‚’่ฟ”ใ—ใพใ™ใ€‚
    nullๅž‹ใ‚’่ฟ”ใ—ใพใ™ใ€‚
    ใƒ—ใƒชใƒŸใƒ†ใ‚ฃใƒ–ๅž‹ใ‚’่ฟ”ใ—ใพใ™ใ€‚
    getWildcardType(TypeMirror extendsBound, TypeMirror superBound)
    ๆ–ฐใ—ใ„ใƒฏใ‚คใƒซใƒ‰ใ‚ซใƒผใƒ‰ๅž‹ใ‚’่ฟ”ใ—ใพใ™ใ€‚
    boolean
    ใ‚ใ‚‹ๅž‹ใ‚’ๅˆฅใฎๅž‹ใซไปฃๅ…ฅใงใใ‚‹ใ‹ใฉใ†ใ‹ใ‚’ใƒ†ใ‚นใƒˆใ—ใพใ™ใ€‚
    boolean
    2ใคใฎTypeMirrorใ‚ชใƒ–ใ‚ธใ‚งใ‚ฏใƒˆใŒๅŒใ˜ๅž‹ใ‚’่กจใ™ใ‹ใฉใ†ใ‹ใ‚’ใƒ†ใ‚นใƒˆใ—ใพใ™ใ€‚
    boolean
    ใ‚ใ‚‹ใƒกใ‚ฝใƒƒใƒ‰ใฎใ‚ทใ‚ฐใƒใƒใƒฃใŒๅˆฅใฎใƒกใ‚ฝใƒƒใƒ‰ใฎใ‚ตใƒ–ใ‚ทใ‚ฐใƒใƒใƒฃใงใ‚ใ‚‹ใ‹ใฉใ†ใ‹ใ‚’ใƒ†ใ‚นใƒˆใ—ใพใ™ใ€‚
    boolean
    ใ‚ใ‚‹ๅž‹ใŒๅˆฅใฎๅž‹ใฎใ‚ตใƒ–ใ‚ฟใ‚คใƒ—ใงใ‚ใ‚‹ใ‹ใฉใ†ใ‹ใ‚’ใƒ†ใ‚นใƒˆใ—ใพใ™ใ€‚
    default <T extends TypeMirror>
    T
    ๅผ•ๆ•ฐใจๅŒ็ญ‰ใฎๅž‹ใƒŸใƒฉใƒผใ‚’่ฟ”ใ—ใพใ™ใŒใ€ๆณจ้‡ˆใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚
    ๆŒ‡ๅฎšใ•ใ‚ŒใŸๅž‹ใฎใ‚ขใƒณใƒœใ‚ฏใ‚ทใƒณใ‚ฐใ•ใ‚ŒใŸๅ€คใฎๅž‹(ใƒ—ใƒชใƒŸใƒ†ใ‚ฃใƒ–ๅž‹)ใ‚’่ฟ”ใ—ใพใ™ใ€‚
  • ใƒกใ‚ฝใƒƒใƒ‰ใฎ่ฉณ็ดฐ

    • asElement

      Element asElement(TypeMirror t)
      ๅž‹ใซๅฏพๅฟœใ™ใ‚‹่ฆ็ด ใ‚’่ฟ”ใ—ใพใ™ใ€‚ ๅž‹ใฏๆฌกใฎใ„ใšใ‚Œใ‹ใงใ™: ๅž‹ใŒๅฏพๅฟœใ™ใ‚‹่ฆ็ด ใ‚’ๆŒใคๅž‹ใงใชใ„ๅ ดๅˆใ€ใƒกใ‚ฝใƒƒใƒ‰ใฏnullใ‚’่ฟ”ใ—ใพใ™ใ€‚ ๅฏพๅฟœใ™ใ‚‹่ฆ็ด ใŒใชใ„ๅž‹ใฏๆฌกใฎใจใŠใ‚Šใงใ™:
      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      t - ่ฆ็ด ใซใƒžใƒƒใƒ—ใ™ใ‚‹ๅž‹
      ๆˆปใ‚Šๅ€ค:
      ๆŒ‡ๅฎšใ•ใ‚ŒใŸๅž‹ใซๅฏพๅฟœใ™ใ‚‹่ฆ็ด 
    • isSameType

      boolean isSameType(TypeMirror t1, TypeMirror t2)
      2ใคใฎTypeMirrorใ‚ชใƒ–ใ‚ธใ‚งใ‚ฏใƒˆใŒๅŒใ˜ๅž‹ใ‚’่กจใ™ใ‹ใฉใ†ใ‹ใ‚’ใƒ†ใ‚นใƒˆใ—ใพใ™ใ€‚

      ๆณจๆ„: ใ“ใฎใƒกใ‚ฝใƒƒใƒ‰ใซๆธกใ•ใ‚Œใ‚‹ๅผ•ๆ•ฐใฎใ„ใšใ‚Œใ‹ใŒใƒฏใ‚คใƒซใƒ‰ใ‚ซใƒผใƒ‰ใ‚’่กจใ—ใฆใ„ใ‚‹ๅ ดๅˆใ€ใ“ใฎใƒกใ‚ฝใƒƒใƒ‰ใฏfalseใ‚’่ฟ”ใ—ใพใ™ใ€‚ ใใฎใŸใ‚ใ€ใƒฏใ‚คใƒซใƒ‰ใ‚ซใƒผใƒ‰ใฏ่‡ช่บซใจๅŒใ˜ๅž‹ใงใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ ใ“ใ‚Œใฏไธ€่ฆ‹้ฉšใในใใ“ใจใงใ™ใŒใ€ๆฌกใฎใ‚ˆใ†ใชไพ‹ใฏใ‚ณใƒณใƒ‘ใ‚คใƒฉใซๆ‹’ๅฆใ•ใ‚Œใ‚‹ใ“ใจใ‹ใ‚‰็†่งฃใงใใ‚‹ใฏใšใงใ™ใ€‚

         List<?> list = new ArrayList<Object>();
         list.add(list.get(0));
       

      ๆณจ้‡ˆใฏๅž‹ใซ้–ข้€ฃไป˜ใ‘ใ‚‰ใ‚ŒใŸใƒกใ‚ฟใƒ‡ใƒผใ‚ฟใซใ™ใŽใชใ„ใŸใ‚ใ€2ใคใฎ TypeMirrorใ‚ชใƒ–ใ‚ธใ‚งใ‚ฏใƒˆใŒๅŒใ˜ๅž‹ใ‹ใฉใ†ใ‹ใ‚’่จˆ็ฎ—ใ™ใ‚‹ใจใใซใ€ใฉใกใ‚‰ใฎๅผ•ๆ•ฐใฎๆณจ้‡ˆใ‚ปใƒƒใƒˆใ‚‚่€ƒๆ…ฎใ•ใ‚Œใพใ›ใ‚“ใ€‚ ๅ…ทไฝ“็š„ใซใฏใ€2ใคใฎTypeMirrorใ‚ชใƒ–ใ‚ธใ‚งใ‚ฏใƒˆใฏ็•ฐใชใ‚‹ๆณจ้‡ˆใ‚’ๆŒใฃใฆใ„ใฆใ‚‚ๅŒใ˜ใจ่ฆ‹ใชใ•ใ‚Œใ‚‹ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚

      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      t1 - 1็•ช็›ฎใฎๅž‹
      t2 - 2็•ช็›ฎใฎๅž‹
      ๆˆปใ‚Šๅ€ค:
      2ใคใฎๅž‹ใŒๅŒใ˜ๅ ดๅˆใซ้™ใ‚Štrue
    • isSubtype

      boolean isSubtype(TypeMirror t1, TypeMirror t2)
      ใ‚ใ‚‹ๅž‹ใŒๅˆฅใฎๅž‹ใฎใ‚ตใƒ–ใ‚ฟใ‚คใƒ—ใงใ‚ใ‚‹ใ‹ใฉใ†ใ‹ใ‚’ใƒ†ใ‚นใƒˆใ—ใพใ™ใ€‚ ๅž‹ใฏใใ‚Œ่‡ชไฝ“ใฎใ‚ตใƒ–ใ‚ฟใ‚คใƒ—ใงใ‚ใ‚‹ใจใฟใชใ•ใ‚Œใพใ™ใ€‚
      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      t1 - 1็•ช็›ฎใฎๅž‹
      t2 - 2็•ช็›ฎใฎๅž‹
      ๆˆปใ‚Šๅ€ค:
      ๆœ€ๅˆใฎๅž‹ใŒ2็•ช็›ฎใฎๅž‹ใฎใ‚ตใƒ–ใ‚ฟใ‚คใƒ—ใงใ‚ใ‚‹ๅ ดๅˆใซ้™ใ‚Štrue
      ใ‚นใƒญใƒผ:
      IllegalArgumentException - ๅฎŸ่กŒๅฏ่ƒฝใƒ•ใ‚กใ‚คใƒซใ€ใƒ‘ใƒƒใ‚ฑใƒผใ‚ธใพใŸใฏใƒขใ‚ธใƒฅใƒผใƒซใฎใ‚ฟใ‚คใƒ—ใ‚’ๆŒ‡ๅฎšใ—ใŸๅ ดๅˆ
      Java่จ€่ชžไป•ๆง˜ใ‚’ๅ‚็…งใ—ใฆใใ ใ•ใ„:
      4.10 ใ‚ตใƒ–ๅž‹
    • isAssignable

      boolean isAssignable(TypeMirror t1, TypeMirror t2)
      ใ‚ใ‚‹ๅž‹ใ‚’ๅˆฅใฎๅž‹ใซไปฃๅ…ฅใงใใ‚‹ใ‹ใฉใ†ใ‹ใ‚’ใƒ†ใ‚นใƒˆใ—ใพใ™ใ€‚
      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      t1 - 1็•ช็›ฎใฎๅž‹
      t2 - 2็•ช็›ฎใฎๅž‹
      ๆˆปใ‚Šๅ€ค:
      ๆœ€ๅˆใฎๅž‹ใŒ2็•ช็›ฎใฎๅž‹ใซไปฃๅ…ฅๅฏ่ƒฝใงใ‚ใ‚‹ๅ ดๅˆใซ้™ใ‚Štrue
      ใ‚นใƒญใƒผ:
      IllegalArgumentException - ๅฎŸ่กŒๅฏ่ƒฝใƒ•ใ‚กใ‚คใƒซใ€ใƒ‘ใƒƒใ‚ฑใƒผใ‚ธใพใŸใฏใƒขใ‚ธใƒฅใƒผใƒซใฎใ‚ฟใ‚คใƒ—ใ‚’ๆŒ‡ๅฎšใ—ใŸๅ ดๅˆ
      Java่จ€่ชžไป•ๆง˜ใ‚’ๅ‚็…งใ—ใฆใใ ใ•ใ„:
      5.2 ๅ‰ฒๅฝ“ใฆใ‚ณใƒณใƒ†ใ‚ญใ‚นใƒˆ
    • contains

      boolean contains(TypeMirror t1, TypeMirror t2)
      ใ‚ใ‚‹ๅž‹ๅผ•ๆ•ฐใ‚’ๅˆฅใฎๅž‹ใซๅŒ…ๅซใงใใ‚‹ใ‹ใฉใ†ใ‹ใ‚’ใƒ†ใ‚นใƒˆใ—ใพใ™ใ€‚
      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      t1 - 1็•ช็›ฎใฎๅž‹
      t2 - 2็•ช็›ฎใฎๅž‹
      ๆˆปใ‚Šๅ€ค:
      ๅ…ˆ้ ญใฎๅž‹ใŒ2็•ช็›ฎใฎๅž‹ใ‚’ๅŒ…ๅซใ—ใฆใ„ใ‚‹ๅ ดๅˆใซ้™ใ‚Štrue
      ใ‚นใƒญใƒผ:
      IllegalArgumentException - ๅฎŸ่กŒๅฏ่ƒฝใƒ•ใ‚กใ‚คใƒซใ€ใƒ‘ใƒƒใ‚ฑใƒผใ‚ธใพใŸใฏใƒขใ‚ธใƒฅใƒผใƒซใฎใ‚ฟใ‚คใƒ—ใ‚’ๆŒ‡ๅฎšใ—ใŸๅ ดๅˆ
      Java่จ€่ชžไป•ๆง˜ใ‚’ๅ‚็…งใ—ใฆใใ ใ•ใ„:
      4.5.1 ใƒ‘ใƒฉใƒกใƒผใ‚ฟๅŒ–ใ•ใ‚ŒใŸๅž‹ใฎๅž‹ๅผ•ๆ•ฐ
    • isSubsignature

      boolean isSubsignature(ExecutableType m1, ExecutableType m2)
      ใ‚ใ‚‹ใƒกใ‚ฝใƒƒใƒ‰ใฎใ‚ทใ‚ฐใƒใƒใƒฃใŒๅˆฅใฎใƒกใ‚ฝใƒƒใƒ‰ใฎใ‚ตใƒ–ใ‚ทใ‚ฐใƒใƒใƒฃใงใ‚ใ‚‹ใ‹ใฉใ†ใ‹ใ‚’ใƒ†ใ‚นใƒˆใ—ใพใ™ใ€‚
      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      m1 - ๆœ€ๅˆใฎใƒกใ‚ฝใƒƒใƒ‰
      m2 - 2็•ช็›ฎใฎใƒกใ‚ฝใƒƒใƒ‰
      ๆˆปใ‚Šๅ€ค:
      ๆœ€ๅˆใฎใ‚ทใ‚ฐใƒใƒใƒฃใŒ2็•ช็›ฎใฎใ‚ทใ‚ฐใƒใƒใƒฃใฎใ‚ตใƒ–ใ‚ทใ‚ฐใƒใƒใƒฃใงใ‚ใ‚‹ๅ ดๅˆใซ้™ใ‚Štrue
      Java่จ€่ชžไป•ๆง˜ใ‚’ๅ‚็…งใ—ใฆใใ ใ•ใ„:
      8.4.2 ใƒกใ‚ฝใƒƒใƒ‰ใƒปใ‚ทใ‚ฐใƒใƒใƒฃ
    • directSupertypes

      List<? extends TypeMirror> directSupertypes(TypeMirror t)
      ๅž‹ใฎ็›ดๆŽฅใฎใ‚นใƒผใƒ‘ใƒผใƒปใ‚ฟใ‚คใƒ—ใ‚’่ฟ”ใ—ใพใ™ใ€‚ ใ‚คใƒณใ‚ฟใƒ•ใ‚งใƒผใ‚นๅž‹ใŒๅญ˜ๅœจใ™ใ‚‹ๅ ดๅˆใ€ใใฎใ‚คใƒณใ‚ฟใƒ•ใ‚งใƒผใ‚นๅž‹ใŒใƒชใ‚นใƒˆใฎๆœ€ๅพŒใซ็พใ‚Œใพใ™ใ€‚ ็›ดๆŽฅใ‚นใƒผใƒ‘ใƒผใƒปใ‚คใƒณใ‚ฟใƒ•ใ‚งใƒผใ‚นใฎใชใ„ใ‚คใƒณใ‚ฟใƒ•ใ‚งใƒผใ‚นใƒปใ‚ฟใ‚คใƒ—ใฎๅ ดๅˆใ€java.lang.Objectใ‚’่กจใ™ๅž‹ใƒŸใƒฉใƒผใŒ่ฟ”ใ•ใ‚Œใพใ™ใ€‚ ๅž‹java.lang.Objectใซใฏ็›ดๆŽฅใ‚นใƒผใƒ‘ใƒผใ‚ฟใ‚คใƒ—(JLS 8.1.4ใ€8.1.5)ใŒใชใ„ใŸใ‚ใ€ java.lang.Objectใ‚’่กจใ™ใ‚ฟใ‚คใƒ—ใƒปใƒŸใƒฉใƒผใฎ็›ดๆŽฅใ‚นใƒผใƒ‘ใƒผใ‚ฟใ‚คใƒ—ใซๅฏพใ—ใฆ็ฉบใฎใƒชใ‚นใƒˆใŒ่ฟ”ใ•ใ‚Œใพใ™ใ€‚ ็›ดๆŽฅใ‚นใƒผใƒ‘ใƒผใ‚ฟใ‚คใƒ—ใฎๆณจ้‡ˆใฏไฟๆŒใ•ใ‚Œใพใ™ใ€‚
      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      t - ่ชฟในใ‚‹ๅฏพ่ฑกใฎๅž‹
      ๆˆปใ‚Šๅ€ค:
      ็›ดๆŽฅใฎใ‚นใƒผใƒ‘ใƒผใƒปใ‚ฟใ‚คใƒ—ใ€‚ๅญ˜ๅœจใ—ใชใ„ๅ ดๅˆใฏ็ฉบใฎใƒชใ‚นใƒˆ
      ใ‚นใƒญใƒผ:
      IllegalArgumentException - ๅฎŸ่กŒๅฏ่ƒฝใƒ•ใ‚กใ‚คใƒซใ€ใƒ‘ใƒƒใ‚ฑใƒผใ‚ธใพใŸใฏใƒขใ‚ธใƒฅใƒผใƒซใฎใ‚ฟใ‚คใƒ—ใ‚’ๆŒ‡ๅฎšใ—ใŸๅ ดๅˆ
      Java่จ€่ชžไป•ๆง˜ใ‚’ๅ‚็…งใ—ใฆใใ ใ•ใ„:
      4.10 ใ‚ตใƒ–ๅž‹
    • erasure

      TypeMirror erasure(TypeMirror t)
      ๅž‹ใฎๆถˆๅŽปใ‚’่ฟ”ใ—ใพใ™ใ€‚
      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      t - ๆถˆๅŽปใ•ใ‚Œใ‚‹ๅž‹
      ๆˆปใ‚Šๅ€ค:
      ๅž‹ใฎๆถˆๅŽป
      ใ‚นใƒญใƒผ:
      IllegalArgumentException - ใƒ‘ใƒƒใ‚ฑใƒผใ‚ธใพใŸใฏใƒขใ‚ธใƒฅใƒผใƒซใฎๅž‹ใŒๆŒ‡ๅฎšใ•ใ‚Œใฆใ„ใ‚‹ๅ ดๅˆ
      Java่จ€่ชžไป•ๆง˜ใ‚’ๅ‚็…งใ—ใฆใใ ใ•ใ„:
      4.6 ๅž‹ใฎๆถˆๅŽป
    • boxedClass

      TypeElement boxedClass(PrimitiveType p)
      ใƒ—ใƒชใƒŸใƒ†ใ‚ฃใƒ–ๅž‹ๅผ•ๆ•ฐใฎใƒœใƒƒใ‚ฏใ‚นๅ€คใฎใ‚ฏใƒฉใ‚นใ‚’่ฟ”ใ—ใพใ™ใ€‚ ใคใพใ‚Šใ€ใƒœใ‚ฏใ‚ทใƒณใ‚ฐๅค‰ๆ›ใŒ้ฉ็”จใ•ใ‚Œใพใ™ใ€‚
      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      p - ๅค‰ๆ›ใ•ใ‚Œใ‚‹ใƒ—ใƒชใƒŸใƒ†ใ‚ฃใƒ–ๅž‹
      ๆˆปใ‚Šๅ€ค:
      ใƒ—ใƒชใƒŸใƒ†ใ‚ฃใƒ–ๅž‹ๅผ•ๆ•ฐใฎใƒœใƒƒใ‚ฏใ‚นๅ€คใฎใ‚ฏใƒฉใ‚น
      Java่จ€่ชžไป•ๆง˜ใ‚’ๅ‚็…งใ—ใฆใใ ใ•ใ„:
      5.1.7 ใƒœใ‚ฏใ‚ทใƒณใ‚ฐๅค‰ๆ›
    • unboxedType

      PrimitiveType unboxedType(TypeMirror t)
      ๆŒ‡ๅฎšใ•ใ‚ŒใŸๅž‹ใฎใ‚ขใƒณใƒœใ‚ฏใ‚ทใƒณใ‚ฐใ•ใ‚ŒใŸๅ€คใฎๅž‹(ใƒ—ใƒชใƒŸใƒ†ใ‚ฃใƒ–ๅž‹)ใ‚’่ฟ”ใ—ใพใ™ใ€‚ ใคใพใ‚Šใ€ใ‚ขใƒณใƒœใ‚ฏใ‚ทใƒณใ‚ฐๅค‰ๆ›ใŒ้ฉ็”จใ•ใ‚Œใพใ™ใ€‚
      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      t - ใ‚ขใƒณใƒœใ‚ฏใ‚ทใƒณใ‚ฐใ•ใ‚Œใ‚‹ๅž‹
      ๆˆปใ‚Šๅ€ค:
      ๅž‹tใฎใ‚ขใƒณใƒœใ‚ฏใ‚ทใƒณใ‚ฐใ•ใ‚ŒใŸๅ€คใฎๅž‹
      ใ‚นใƒญใƒผ:
      IllegalArgumentException - ๆŒ‡ๅฎšใ•ใ‚ŒใŸๅž‹ใŒใ‚ขใƒณใƒœใ‚ฏใ‚ทใƒณใ‚ฐๅค‰ๆ›ใ‚’ๆŒใŸใชใ„ๅ ดๅˆ ใ€Œใƒฉใƒƒใƒ‘ใƒผใƒปใ‚ฏใƒฉใ‚นใ€ใฎๅž‹ใฎใฟใŒใƒœใƒƒใ‚ฏใ‚นๅŒ–่งฃ้™คๅค‰ๆ›ใ‚’ๆŒใกใพใ™ใ€‚
      Java่จ€่ชžไป•ๆง˜ใ‚’ๅ‚็…งใ—ใฆใใ ใ•ใ„:
      5.1.8 ใ‚ขใƒณใƒœใ‚ฏใ‚ทใƒณใ‚ฐๅค‰ๆ›
    • capture

      TypeMirror capture(TypeMirror t)
      ๅž‹ใซๅ–ๅพ—ๅค‰ๆ›ใ‚’้ฉ็”จใ—ใพใ™ใ€‚
      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      t - ๅค‰ๆ›ใ•ใ‚Œใ‚‹ๅž‹
      ๆˆปใ‚Šๅ€ค:
      ๅ–ๅพ—ๅค‰ๆ›ใฎ้ฉ็”จ็ตๆžœ
      ใ‚นใƒญใƒผ:
      IllegalArgumentException - ๅฎŸ่กŒๅฏ่ƒฝใƒ•ใ‚กใ‚คใƒซใ€ใƒ‘ใƒƒใ‚ฑใƒผใ‚ธใพใŸใฏใƒขใ‚ธใƒฅใƒผใƒซใฎใ‚ฟใ‚คใƒ—ใ‚’ๆŒ‡ๅฎšใ—ใŸๅ ดๅˆ
      Java่จ€่ชžไป•ๆง˜ใ‚’ๅ‚็…งใ—ใฆใใ ใ•ใ„:
      5.1.10 ๅ–ๅพ—ๅค‰ๆ›
    • getPrimitiveType

      PrimitiveType getPrimitiveType(TypeKind kind)
      ใƒ—ใƒชใƒŸใƒ†ใ‚ฃใƒ–ๅž‹ใ‚’่ฟ”ใ—ใพใ™ใ€‚
      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      kind - ่ฟ”ใ™ใƒ—ใƒชใƒŸใƒ†ใ‚ฃใƒ–ๅž‹ใฎ็จฎ้กž
      ๆˆปใ‚Šๅ€ค:
      ใƒ—ใƒชใƒŸใƒ†ใ‚ฃใƒ–ๅž‹
      ใ‚นใƒญใƒผ:
      IllegalArgumentException - kindใŒใƒ—ใƒชใƒŸใƒ†ใ‚ฃใƒ–ๅž‹ใงใชใ„ๅ ดๅˆ
      Java่จ€่ชžไป•ๆง˜ใ‚’ๅ‚็…งใ—ใฆใใ ใ•ใ„:
      4.2 ใƒ—ใƒชใƒŸใƒ†ใ‚ฃใƒ–ใƒปใ‚ฟใ‚คใƒ—ใŠใ‚ˆใณๅ€ค
    • getNullType

      NullType getNullType()
      nullๅž‹ใ‚’่ฟ”ใ—ใพใ™ใ€‚ ใ“ใ‚Œใฏใ€nullใฎๅž‹ใงใ™ใ€‚
      ๆˆปใ‚Šๅ€ค:
      nullๅž‹
      Java่จ€่ชžไป•ๆง˜ใ‚’ๅ‚็…งใ—ใฆใใ ใ•ใ„:
      ใ€Œ4.1 ใ‚ฟใ‚คใƒ—ใจๅ€คใฎ็จฎ้กžใ€
    • getNoType

      NoType getNoType(TypeKind kind)
      ้ฉๅˆ‡ใชๅฎŸ้š›ใฎๅž‹ใŒๅญ˜ๅœจใ—ใชใ„ๅ ดๅˆใซไฝฟ็”จใ•ใ‚Œใ‚‹ๆ“ฌไผผๅž‹ใ‚’่ฟ”ใ—ใพใ™ใ€‚ ่ฟ”ใ•ใ‚Œใ‚‹ๅž‹ใฎ็จฎ้กžใฏใ€VOIDใจNONEใฎใ„ใšใ‚Œใ‹ใงใ™ใ€‚

      ใƒ‘ใƒƒใ‚ฑใƒผใ‚ธใพใŸใฏใƒขใ‚ธใƒฅใƒผใƒซใซๅฏพๅฟœใ™ใ‚‹ๆ“ฌไผผใ‚ฟใ‚คใƒ—ใ‚’ๅ–ๅพ—ใ™ใ‚‹ใซใฏใ€packageใพใŸใฏmoduleใ‚’ใƒขใƒ‡ใƒซๅŒ–ใ™ใ‚‹่ฆ็ด ใงasType()ใ‚’ใ‚ณใƒผใƒซใ—ใพใ™ใ€‚ ๅๅ‰ใฏใ€ใใ‚Œใžใ‚ŒElements.getPackageElement(CharSequence)ใพใŸใฏElements.getModuleElement(CharSequence)ใ‚’ไฝฟ็”จใ—ใฆใ€ใƒ‘ใƒƒใ‚ฑใƒผใ‚ธใพใŸใฏใƒขใ‚ธใƒฅใƒผใƒซใฎ่ฆ็ด ใซๅค‰ๆ›ใงใใพใ™ใ€‚

      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      kind - ่ฟ”ใ•ใ‚Œใ‚‹ๅž‹ใฎ็จฎ้กž
      ๆˆปใ‚Šๅ€ค:
      ็จฎ้กžVOIDใพใŸใฏNONEใฎๆ“ฌไผผๅž‹ใ€‚
      ใ‚นใƒญใƒผ:
      IllegalArgumentException - kindใŒๆœ‰ๅŠนใงใชใ„ๅ ดๅˆ
    • getArrayType

      ArrayType getArrayType(TypeMirror componentType)
      ๆŒ‡ๅฎšใ•ใ‚ŒใŸใ‚ณใƒณใƒใƒผใƒใƒณใƒˆๅž‹ใจใจใ‚‚ใซ้…ๅˆ—ๅž‹ใ‚’่ฟ”ใ—ใพใ™ใ€‚ ใ‚ณใƒณใƒใƒผใƒใƒณใƒˆใƒปใ‚ฟใ‚คใƒ—ใฎๆณจ้‡ˆใฏไฟๆŒใ•ใ‚Œใพใ™ใ€‚
      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      componentType - ใ‚ณใƒณใƒใƒผใƒใƒณใƒˆๅž‹
      ๆˆปใ‚Šๅ€ค:
      ๆŒ‡ๅฎšใ•ใ‚ŒใŸใ‚ณใƒณใƒใƒผใƒใƒณใƒˆๅž‹ใ‚’ๅซใ‚€้…ๅˆ—ๅž‹
      ใ‚นใƒญใƒผ:
      IllegalArgumentException - ใ‚ณใƒณใƒใƒผใƒใƒณใƒˆๅž‹ใŒ้…ๅˆ—ใซๅฏพใ—ใฆๆœ‰ๅŠนใงใชใ„ๅ ดๅˆ ๆœ‰ๅŠนใชใ‚ฟใ‚คใƒ—ใฏใ€ใ™ในใฆใ€Œๅ‚็…งใ‚ฟใ‚คใƒ—ใ€ใพใŸใฏใ€Œใƒ—ใƒชใƒŸใƒ†ใ‚ฃใƒ–ๅž‹ใ€ใงใ™ใ€‚ ็„กๅŠนใชใ‚ฟใ‚คใƒ—ใซใฏใ€nullใ€ๅฎŸ่กŒๅฏ่ƒฝใƒ•ใ‚กใ‚คใƒซใ€ใƒ‘ใƒƒใ‚ฑใƒผใ‚ธใ€ใƒขใ‚ธใƒฅใƒผใƒซใŠใ‚ˆใณใƒฏใ‚คใƒซใƒ‰ใ‚ซใƒผใƒ‰ใƒปใ‚ฟใ‚คใƒ—ใŒๅซใพใ‚Œใพใ™ใ€‚
      Java่จ€่ชžไป•ๆง˜ใ‚’ๅ‚็…งใ—ใฆใใ ใ•ใ„:
      10.1 ้…ๅˆ—ใ‚ฟใ‚คใƒ—
    • getWildcardType

      WildcardType getWildcardType(TypeMirror extendsBound, TypeMirror superBound)
      ๆ–ฐใ—ใ„ใƒฏใ‚คใƒซใƒ‰ใ‚ซใƒผใƒ‰ๅž‹ใ‚’่ฟ”ใ—ใพใ™ใ€‚ ใƒฏใ‚คใƒซใƒ‰ใ‚ซใƒผใƒ‰ใฎๅขƒ็•Œใฎใฉใกใ‚‰ใ‹ใ‚’ๆŒ‡ๅฎšใ™ใ‚‹ใ“ใจใ‚‚ใ€ไธกๆ–นใจใ‚‚ๆŒ‡ๅฎšใ—ใชใ„ใ“ใจใ‚‚ใงใใพใ™ใŒใ€ไธกๆ–นใ‚’ๆŒ‡ๅฎšใ™ใ‚‹ใ“ใจใฏใงใใพใ›ใ‚“ใ€‚ ๅขƒ็•ŒไธŠใฎๆณจ้‡ˆใฏไฟๆŒใ•ใ‚Œใพใ™ใ€‚
      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      extendsBound - extendsๅขƒ็•Œ(ไธŠ้™)ใ€‚ๅญ˜ๅœจใ—ใชใ„ๅ ดๅˆใฏnull
      superBound - superๅขƒ็•Œ(ไธ‹้™)ใ€‚ๅญ˜ๅœจใ—ใชใ„ๅ ดๅˆใฏnull
      ๆˆปใ‚Šๅ€ค:
      ๆ–ฐใ—ใ„ใƒฏใ‚คใƒซใƒ‰ใ‚ซใƒผใƒ‰ๅž‹
      ใ‚นใƒญใƒผ:
      IllegalArgumentException - ๅขƒ็•ŒใŒๆœ‰ๅŠนใงใชใ„ๅ ดๅˆ ็„กๅŠนใชๅขƒ็•Œใซใฏใ€ใ€Œๅ‚็…งใ‚ฟใ‚คใƒ—ใ€ใงใฏใชใ„ใ™ในใฆใฎใ‚ฟใ‚คใƒ—ใŒๅซใพใ‚Œใพใ™ใ€‚
      Java่จ€่ชžไป•ๆง˜ใ‚’ๅ‚็…งใ—ใฆใใ ใ•ใ„:
      4.5.1 ใƒ‘ใƒฉใƒกใƒผใ‚ฟๅŒ–ใ•ใ‚ŒใŸๅž‹ใฎๅž‹ๅผ•ๆ•ฐ
    • getDeclaredType

      DeclaredType getDeclaredType(TypeElement typeElem, TypeMirror... typeArgs)
      ๅž‹่ฆ็ด ใจๅฎŸ้š›ใฎๅž‹ๅผ•ๆ•ฐใซๅฏพๅฟœใ™ใ‚‹ๅž‹ใ‚’่ฟ”ใ—ใพใ™ใ€‚ ใŸใจใˆใฐใ€Setใฎๅž‹่ฆ็ด ใจStringใฎๅž‹ใƒŸใƒฉใƒผใŒๆŒ‡ๅฎšใ•ใ‚Œใฆใ„ใ‚‹ๅ ดๅˆใ€ใ“ใฎใƒกใ‚ฝใƒƒใƒ‰ใ‚’ไฝฟ็”จใ™ใ‚‹ใจใ€ใƒ‘ใƒฉใƒกใƒผใ‚ฟๅŒ–ใ•ใ‚ŒใŸๅž‹Set<String>ใ‚’ๅ–ๅพ—ใงใใพใ™ใ€‚ ๅž‹ๅผ•ๆ•ฐใฎๆณจ้‡ˆใฏไฟๆŒใ•ใ‚Œใพใ™ใ€‚

      ๅž‹ๅผ•ๆ•ฐใฎๆ•ฐใฏใ€ๅž‹่ฆ็ด ใฎๅฝขๅผๅž‹ใƒ‘ใƒฉใƒกใƒผใ‚ฟใฎๆ•ฐใซ็ญ‰ใ—ใ„ใ‹ใ€ใ‚ผใƒญใงใ‚ใ‚‹ๅฟ…่ฆใŒใ‚ใ‚Šใพใ™ใ€‚ ใ‚ผใƒญใฎๅ ดๅˆใŠใ‚ˆใณๅž‹่ฆ็ด ใŒใ‚ธใ‚งใƒใƒชใƒƒใ‚ฏใฎๅ ดๅˆใฏใ€ๅž‹่ฆ็ด ใฎ็”Ÿใฎๅž‹ใŒ่ฟ”ใ•ใ‚Œใพใ™ใ€‚

      ใƒ‘ใƒฉใƒกใƒผใ‚ฟๅŒ–ใ•ใ‚ŒใŸๅž‹ใŒ่ฟ”ใ•ใ‚Œใ‚‹ๅ ดๅˆใ€ๅž‹่ฆ็ด ใฏใ‚ธใ‚งใƒใƒชใƒƒใ‚ฏๅค–้ƒจใ‚ฏใƒฉใ‚นๅ†…ใซๅซใพใ‚Œใพใ›ใ‚“ใ€‚ ใŸใจใˆใฐใ€ใƒ‘ใƒฉใƒกใƒผใ‚ฟๅŒ–ใ•ใ‚ŒใŸๅž‹Outer<String>.Inner<Number>ใฏใ€ๆœ€ๅˆใซใ“ใฎใƒกใ‚ฝใƒƒใƒ‰ใ‚’ไฝฟ็”จใ—ใฆๅž‹Outer<String>ใ‚’ๅ–ๅพ—ใ—ใ€ๆฌกใซgetDeclaredType(DeclaredType, TypeElement, TypeMirror...)ใ‚’ๅ‘ผใณๅ‡บใ™ใ“ใจใซใ‚ˆใฃใฆๆง‹็ฏ‰ใงใใพใ™ใ€‚

      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      typeElem - ๅž‹่ฆ็ด 
      typeArgs - ๅฎŸ้š›ใฎๅž‹ๅผ•ๆ•ฐ
      ๆˆปใ‚Šๅ€ค:
      ๅž‹่ฆ็ด ใŠใ‚ˆใณๅฎŸ้š›ใฎๅž‹ๅผ•ๆ•ฐใซๅฏพๅฟœใ™ใ‚‹ๅž‹
      ใ‚นใƒญใƒผ:
      IllegalArgumentException - ๆŒ‡ๅฎšใ•ใ‚ŒใŸๅž‹ๅผ•ๆ•ฐใŒๅคšใ™ใŽใ‚‹ใ‹ๅฐ‘ใชใ™ใŽใ‚‹ๅ ดๅˆใ€ใ‚ใ‚‹ใ„ใฏไธ้ฉๅˆ‡ใชๅž‹ๅผ•ๆ•ฐใพใŸใฏๅž‹่ฆ็ด ใŒๆไพ›ใ•ใ‚ŒใŸๅ ดๅˆ
    • getDeclaredType

      DeclaredType getDeclaredType(DeclaredType containing, TypeElement typeElem, TypeMirror... typeArgs)
      ใƒกใƒณใƒใƒผใงใ‚ใ‚‹ๅž‹ใฎๅŒ…ๅซๅž‹ใ‚’ๆŒ‡ๅฎšใ™ใ‚‹ใจใ€ๅž‹่ฆ็ด ใจๅฎŸ้š›ใฎๅž‹ๅผ•ๆ•ฐใซๅฏพๅฟœใ™ใ‚‹ๅž‹ใ‚’่ฟ”ใ—ใพใ™ใ€‚ ใŸใจใˆใฐใ€ใƒ‘ใƒฉใƒกใƒผใ‚ฟๅŒ–ใ•ใ‚ŒใŸๅž‹Outer<String>.Inner<Number>ใฏใ€ๆœ€ๅˆใซgetDeclaredType(TypeElement, TypeMirror...)ใ‚’ไฝฟ็”จใ—ใฆๅž‹Outer<String>ใ‚’ๅ–ๅพ—ใ—ใ€ๆฌกใซใ“ใฎใƒกใ‚ฝใƒƒใƒ‰ใ‚’ๅ‘ผใณๅ‡บใ™ใ“ใจใซใ‚ˆใฃใฆๆง‹็ฏ‰ใงใใพใ™ใ€‚ ๅž‹ๅผ•ๆ•ฐใฎๆณจ้‡ˆใฏไฟๆŒใ•ใ‚Œใพใ™ใ€‚

      ๅŒ…ๅซๅž‹ใŒใƒ‘ใƒฉใƒกใƒผใ‚ฟๅŒ–ใ•ใ‚ŒใŸๅž‹ใฎๅ ดๅˆใ€ๅž‹ๅผ•ๆ•ฐใฎๆ•ฐใฏใ€typeElemใฎไปฎๅž‹ใƒ‘ใƒฉใƒกใƒผใ‚ฟใฎๆ•ฐใจๅŒใ˜ใงใ‚ใ‚‹ๅฟ…่ฆใŒใ‚ใ‚Šใพใ™ใ€‚ ใƒ‘ใƒฉใƒกใƒผใ‚ฟๅŒ–ใ•ใ‚Œใฆใ„ใชใ„ๅ ดๅˆใพใŸใฏnullใฎๅ ดๅˆใ€ใ“ใฎใƒกใ‚ฝใƒƒใƒ‰ใฏgetDeclaredType(typeElem, typeArgs)ใจ็ญ‰ไพกใงใ™ใ€‚

      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      containing - ๅŒ…ๅซๅž‹ใ€‚ใชใ„ๅ ดๅˆใฏnull
      typeElem - ๅž‹่ฆ็ด 
      typeArgs - ๅฎŸ้š›ใฎๅž‹ๅผ•ๆ•ฐ
      ๆˆปใ‚Šๅ€ค:
      ๆŒ‡ๅฎšใ•ใ‚ŒใŸๅž‹ๅ†…ใซๅŒ…ๅซใ•ใ‚Œใ‚‹ๅž‹่ฆ็ด ใจๅฎŸ้š›ใฎๅž‹ๅผ•ๆ•ฐใซๅฏพๅฟœใ™ใ‚‹ๅž‹
      ใ‚นใƒญใƒผ:
      IllegalArgumentException - ๆŒ‡ๅฎšใ•ใ‚ŒใŸๅž‹ๅผ•ๆ•ฐใŒๅคšใ™ใŽใ‚‹ใ‹ๅฐ‘ใชใ™ใŽใ‚‹ๅ ดๅˆใ€ใ‚ใ‚‹ใ„ใฏไธ้ฉๅˆ‡ใชๅž‹ๅผ•ๆ•ฐใ€ๅž‹่ฆ็ด ใ€ใพใŸใฏๅŒ…ๅซๅž‹ใŒๆไพ›ใ•ใ‚ŒใŸๅ ดๅˆ
    • asMemberOf

      TypeMirror asMemberOf(DeclaredType containing, Element element)
      ๆŒ‡ๅฎšใ•ใ‚ŒใŸๅž‹ใฎใƒกใƒณใƒใƒผใจใ—ใฆ่ฆ็ด ใŒๅ‚็…งใ•ใ‚Œใ‚‹ๅ ดๅˆใ€ใ‚ใ‚‹ใ„ใฏๆŒ‡ๅฎšใ•ใ‚ŒใŸๅž‹ใซ็›ดๆŽฅๅŒ…ๅซใ•ใ‚Œใ‚‹ใƒกใƒณใƒใƒผใจใ—ใฆ่ฆ็ด ใŒๅ‚็…งใ•ใ‚Œใ‚‹ๅ ดๅˆใ€่ฆ็ด ใฎๅž‹ใ‚’่ฟ”ใ—ใพใ™ใ€‚ ใŸใจใˆใฐใ€ใƒ‘ใƒฉใƒกใƒผใ‚ฟๅŒ–ใ•ใ‚ŒใŸๅž‹Set<String>ใฎใƒกใƒณใƒใƒผใจใ—ใฆๅ‚็…งใ•ใ‚Œใ‚‹ๅ ดๅˆใ€Set.addใƒกใ‚ฝใƒƒใƒ‰ใฏๅž‹Stringใฎใƒ‘ใƒฉใƒกใƒผใ‚ฟใ‚’ๆŒใคExecutableTypeใงใ™ใ€‚
      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      containing - ๅŒ…ๅซๅž‹
      element - ่ฆ็ด 
      ๆˆปใ‚Šๅ€ค:
      ๅŒ…ๅซๅž‹ใ‹ใ‚‰ๅ‚็…งใ•ใ‚Œใ‚‹่ฆ็ด ใฎๅž‹
      ใ‚นใƒญใƒผ:
      IllegalArgumentException - ๆŒ‡ๅฎšใ•ใ‚ŒใŸๅž‹ใซๅฏพใ—ใฆ่ฆ็ด ใŒ็„กๅŠนใชๅ ดๅˆ
    • stripAnnotations

      default <T extends TypeMirror> T stripAnnotations(T t)
      ๅผ•ๆ•ฐใจๅŒ็ญ‰ใฎๅž‹ใƒŸใƒฉใƒผใ‚’่ฟ”ใ—ใพใ™ใŒใ€ๆณจ้‡ˆใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ ๅž‹ใƒŸใƒฉใƒผใŒ่ค‡ๅˆๅž‹(้…ๅˆ—ๅž‹ใ‚„ใƒฏใ‚คใƒซใƒ‰ใ‚ซใƒผใƒ‰ๅž‹ใชใฉ)ใฎๅ ดๅˆใ€้…ๅˆ—ใฎใ‚ณใƒณใƒใƒผใƒใƒณใƒˆใƒปใ‚ฟใ‚คใƒ—ใ‚„ใƒฏใ‚คใƒซใƒ‰ใ‚ซใƒผใƒ‰ๅž‹ใฎๅขƒ็•Œใ‚ฟใ‚คใƒ—ใชใฉใฎๆง‹ๆˆๅž‹ใซใฏใ€ๅ†ๅธฐ็š„ใซๆณจ้‡ˆใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚

      ใปใจใ‚“ใฉใฎใ‚ฟใ‚คใƒ—ใฎใƒŸใƒฉใƒผใฎๅ ดๅˆใ€

        types.isSameType(typeMirror, types.stripAnnotations(typeMirror))
      
      ใŒtrueใงใ‚ใ‚‹ใ€‚ ่ฟฐ่ชžใฏใ€ใ€Œไป–ใฎๅ ดๆ‰€ใง่ญฐ่ซ–ใ•ใ‚ŒใŸ็†็”ฑใ€ใฎใƒฏใ‚คใƒซใƒ‰ใ‚ซใƒผใƒ‰ๅž‹ใงใฏfalseใงใ™ใ€‚

      ๅฎŸ่ฃ…่ฆไปถ:
      ใƒ‡ใƒ•ใ‚ฉใƒซใƒˆๅฎŸ่ฃ…ใฏUnsupportedOperationExceptionใ‚’ใ‚นใƒญใƒผใ—ใพใ™ใ€‚
      ๅž‹ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      T - ็‰นๅฎšใฎใ‚ฟใ‚คใƒ—ใฎใƒŸใƒฉใƒผ
      ใƒ‘ใƒฉใƒกใƒผใ‚ฟ:
      t - ๅž‹ใƒŸใƒฉใƒผ
      ๆˆปใ‚Šๅ€ค:
      ๅผ•ๆ•ฐใจๅŒ็ญ‰ใฎๅž‹ใƒŸใƒฉใƒผใงใ™ใŒใ€ๆณจ้‡ˆใฏใ‚ใ‚Šใพใ›ใ‚“
      ๅฐŽๅ…ฅใ•ใ‚ŒใŸใƒใƒผใ‚ธใƒงใƒณ:
      23