github.com/shogo82148/std@v1.22.1-0.20240327122250-4e474527810c/debug/dwarf/const.go (about)

     1  // Copyright 2009 The Go Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  // Constants
     6  
     7  package dwarf
     8  
     9  // Attrは、[Entry.Field] 内の属性タイプを識別します。
    10  type Attr uint32
    11  
    12  const (
    13  	AttrSibling        Attr = 0x01
    14  	AttrLocation       Attr = 0x02
    15  	AttrName           Attr = 0x03
    16  	AttrOrdering       Attr = 0x09
    17  	AttrByteSize       Attr = 0x0B
    18  	AttrBitOffset      Attr = 0x0C
    19  	AttrBitSize        Attr = 0x0D
    20  	AttrStmtList       Attr = 0x10
    21  	AttrLowpc          Attr = 0x11
    22  	AttrHighpc         Attr = 0x12
    23  	AttrLanguage       Attr = 0x13
    24  	AttrDiscr          Attr = 0x15
    25  	AttrDiscrValue     Attr = 0x16
    26  	AttrVisibility     Attr = 0x17
    27  	AttrImport         Attr = 0x18
    28  	AttrStringLength   Attr = 0x19
    29  	AttrCommonRef      Attr = 0x1A
    30  	AttrCompDir        Attr = 0x1B
    31  	AttrConstValue     Attr = 0x1C
    32  	AttrContainingType Attr = 0x1D
    33  	AttrDefaultValue   Attr = 0x1E
    34  	AttrInline         Attr = 0x20
    35  	AttrIsOptional     Attr = 0x21
    36  	AttrLowerBound     Attr = 0x22
    37  	AttrProducer       Attr = 0x25
    38  	AttrPrototyped     Attr = 0x27
    39  	AttrReturnAddr     Attr = 0x2A
    40  	AttrStartScope     Attr = 0x2C
    41  	AttrStrideSize     Attr = 0x2E
    42  	AttrUpperBound     Attr = 0x2F
    43  	AttrAbstractOrigin Attr = 0x31
    44  	AttrAccessibility  Attr = 0x32
    45  	AttrAddrClass      Attr = 0x33
    46  	AttrArtificial     Attr = 0x34
    47  	AttrBaseTypes      Attr = 0x35
    48  	AttrCalling        Attr = 0x36
    49  	AttrCount          Attr = 0x37
    50  	AttrDataMemberLoc  Attr = 0x38
    51  	AttrDeclColumn     Attr = 0x39
    52  	AttrDeclFile       Attr = 0x3A
    53  	AttrDeclLine       Attr = 0x3B
    54  	AttrDeclaration    Attr = 0x3C
    55  	AttrDiscrList      Attr = 0x3D
    56  	AttrEncoding       Attr = 0x3E
    57  	AttrExternal       Attr = 0x3F
    58  	AttrFrameBase      Attr = 0x40
    59  	AttrFriend         Attr = 0x41
    60  	AttrIdentifierCase Attr = 0x42
    61  	AttrMacroInfo      Attr = 0x43
    62  	AttrNamelistItem   Attr = 0x44
    63  	AttrPriority       Attr = 0x45
    64  	AttrSegment        Attr = 0x46
    65  	AttrSpecification  Attr = 0x47
    66  	AttrStaticLink     Attr = 0x48
    67  	AttrType           Attr = 0x49
    68  	AttrUseLocation    Attr = 0x4A
    69  	AttrVarParam       Attr = 0x4B
    70  	AttrVirtuality     Attr = 0x4C
    71  	AttrVtableElemLoc  Attr = 0x4D
    72  	// 以下はDWARF 3で新しくなったものです。
    73  	AttrAllocated     Attr = 0x4E
    74  	AttrAssociated    Attr = 0x4F
    75  	AttrDataLocation  Attr = 0x50
    76  	AttrStride        Attr = 0x51
    77  	AttrEntrypc       Attr = 0x52
    78  	AttrUseUTF8       Attr = 0x53
    79  	AttrExtension     Attr = 0x54
    80  	AttrRanges        Attr = 0x55
    81  	AttrTrampoline    Attr = 0x56
    82  	AttrCallColumn    Attr = 0x57
    83  	AttrCallFile      Attr = 0x58
    84  	AttrCallLine      Attr = 0x59
    85  	AttrDescription   Attr = 0x5A
    86  	AttrBinaryScale   Attr = 0x5B
    87  	AttrDecimalScale  Attr = 0x5C
    88  	AttrSmall         Attr = 0x5D
    89  	AttrDecimalSign   Attr = 0x5E
    90  	AttrDigitCount    Attr = 0x5F
    91  	AttrPictureString Attr = 0x60
    92  	AttrMutable       Attr = 0x61
    93  	AttrThreadsScaled Attr = 0x62
    94  	AttrExplicit      Attr = 0x63
    95  	AttrObjectPointer Attr = 0x64
    96  	AttrEndianity     Attr = 0x65
    97  	AttrElemental     Attr = 0x66
    98  	AttrPure          Attr = 0x67
    99  	AttrRecursive     Attr = 0x68
   100  	// 以下はDWARF 4で新しくなったものです。
   101  	AttrSignature      Attr = 0x69
   102  	AttrMainSubprogram Attr = 0x6A
   103  	AttrDataBitOffset  Attr = 0x6B
   104  	AttrConstExpr      Attr = 0x6C
   105  	AttrEnumClass      Attr = 0x6D
   106  	AttrLinkageName    Attr = 0x6E
   107  	// 以下はDWARF 5で新しくなったものです。
   108  	AttrStringLengthBitSize  Attr = 0x6F
   109  	AttrStringLengthByteSize Attr = 0x70
   110  	AttrRank                 Attr = 0x71
   111  	AttrStrOffsetsBase       Attr = 0x72
   112  	AttrAddrBase             Attr = 0x73
   113  	AttrRnglistsBase         Attr = 0x74
   114  	AttrDwoName              Attr = 0x76
   115  	AttrReference            Attr = 0x77
   116  	AttrRvalueReference      Attr = 0x78
   117  	AttrMacros               Attr = 0x79
   118  	AttrCallAllCalls         Attr = 0x7A
   119  	AttrCallAllSourceCalls   Attr = 0x7B
   120  	AttrCallAllTailCalls     Attr = 0x7C
   121  	AttrCallReturnPC         Attr = 0x7D
   122  	AttrCallValue            Attr = 0x7E
   123  	AttrCallOrigin           Attr = 0x7F
   124  	AttrCallParameter        Attr = 0x80
   125  	AttrCallPC               Attr = 0x81
   126  	AttrCallTailCall         Attr = 0x82
   127  	AttrCallTarget           Attr = 0x83
   128  	AttrCallTargetClobbered  Attr = 0x84
   129  	AttrCallDataLocation     Attr = 0x85
   130  	AttrCallDataValue        Attr = 0x86
   131  	AttrNoreturn             Attr = 0x87
   132  	AttrAlignment            Attr = 0x88
   133  	AttrExportSymbols        Attr = 0x89
   134  	AttrDeleted              Attr = 0x8A
   135  	AttrDefaulted            Attr = 0x8B
   136  	AttrLoclistsBase         Attr = 0x8C
   137  )
   138  
   139  func (a Attr) GoString() string
   140  
   141  // Tagは、[Entry] の分類(タイプ)です。
   142  type Tag uint32
   143  
   144  const (
   145  	TagArrayType              Tag = 0x01
   146  	TagClassType              Tag = 0x02
   147  	TagEntryPoint             Tag = 0x03
   148  	TagEnumerationType        Tag = 0x04
   149  	TagFormalParameter        Tag = 0x05
   150  	TagImportedDeclaration    Tag = 0x08
   151  	TagLabel                  Tag = 0x0A
   152  	TagLexDwarfBlock          Tag = 0x0B
   153  	TagMember                 Tag = 0x0D
   154  	TagPointerType            Tag = 0x0F
   155  	TagReferenceType          Tag = 0x10
   156  	TagCompileUnit            Tag = 0x11
   157  	TagStringType             Tag = 0x12
   158  	TagStructType             Tag = 0x13
   159  	TagSubroutineType         Tag = 0x15
   160  	TagTypedef                Tag = 0x16
   161  	TagUnionType              Tag = 0x17
   162  	TagUnspecifiedParameters  Tag = 0x18
   163  	TagVariant                Tag = 0x19
   164  	TagCommonDwarfBlock       Tag = 0x1A
   165  	TagCommonInclusion        Tag = 0x1B
   166  	TagInheritance            Tag = 0x1C
   167  	TagInlinedSubroutine      Tag = 0x1D
   168  	TagModule                 Tag = 0x1E
   169  	TagPtrToMemberType        Tag = 0x1F
   170  	TagSetType                Tag = 0x20
   171  	TagSubrangeType           Tag = 0x21
   172  	TagWithStmt               Tag = 0x22
   173  	TagAccessDeclaration      Tag = 0x23
   174  	TagBaseType               Tag = 0x24
   175  	TagCatchDwarfBlock        Tag = 0x25
   176  	TagConstType              Tag = 0x26
   177  	TagConstant               Tag = 0x27
   178  	TagEnumerator             Tag = 0x28
   179  	TagFileType               Tag = 0x29
   180  	TagFriend                 Tag = 0x2A
   181  	TagNamelist               Tag = 0x2B
   182  	TagNamelistItem           Tag = 0x2C
   183  	TagPackedType             Tag = 0x2D
   184  	TagSubprogram             Tag = 0x2E
   185  	TagTemplateTypeParameter  Tag = 0x2F
   186  	TagTemplateValueParameter Tag = 0x30
   187  	TagThrownType             Tag = 0x31
   188  	TagTryDwarfBlock          Tag = 0x32
   189  	TagVariantPart            Tag = 0x33
   190  	TagVariable               Tag = 0x34
   191  	TagVolatileType           Tag = 0x35
   192  	// 以下はDWARF 3で新しくなったものです。
   193  	TagDwarfProcedure  Tag = 0x36
   194  	TagRestrictType    Tag = 0x37
   195  	TagInterfaceType   Tag = 0x38
   196  	TagNamespace       Tag = 0x39
   197  	TagImportedModule  Tag = 0x3A
   198  	TagUnspecifiedType Tag = 0x3B
   199  	TagPartialUnit     Tag = 0x3C
   200  	TagImportedUnit    Tag = 0x3D
   201  	TagMutableType     Tag = 0x3E
   202  	TagCondition       Tag = 0x3F
   203  	TagSharedType      Tag = 0x40
   204  	// 以下はDWARF 4で新しくなったものです。
   205  	TagTypeUnit            Tag = 0x41
   206  	TagRvalueReferenceType Tag = 0x42
   207  	TagTemplateAlias       Tag = 0x43
   208  	// 以下はDWARF 5で新しくなったものです。
   209  	TagCoarrayType       Tag = 0x44
   210  	TagGenericSubrange   Tag = 0x45
   211  	TagDynamicType       Tag = 0x46
   212  	TagAtomicType        Tag = 0x47
   213  	TagCallSite          Tag = 0x48
   214  	TagCallSiteParameter Tag = 0x49
   215  	TagSkeletonUnit      Tag = 0x4A
   216  	TagImmutableType     Tag = 0x4B
   217  )
   218  
   219  func (t Tag) GoString() string