FIELD_KINDFIELD_KIND

Especifica o tipo do campo contido em um IDebugField objeto.Specifies the kind of field contained in an IDebugField object.

SintaxeSyntax

enum enum_FIELD_KIND {
    FIELD_KIND_NONE       = 0x00000000,

    // Type of field
    FIELD_KIND_TYPE       = 0x00000001,
    FIELD_KIND_SYMBOL     = 0x00000002,

    // Storage type of the field
    FIELD_TYPE_PRIMITIVE  = 0x00000010,
    FIELD_TYPE_STRUCT     = 0x00000020,
    FIELD_TYPE_CLASS      = 0x00000040,
    FIELD_TYPE_INTERFACE  = 0x00000080,
    FIELD_TYPE_UNION      = 0x00000100,
    FIELD_TYPE_ARRAY      = 0x00000200,
    FIELD_TYPE_METHOD     = 0x00000400,
    FIELD_TYPE_BLOCK      = 0x00000800,
    FIELD_TYPE_POINTER    = 0x00001000,
    FIELD_TYPE_ENUM       = 0x00002000,
    FIELD_TYPE_LABEL      = 0x00004000,
    FIELD_TYPE_TYPEDEF    = 0x00008000,
    FIELD_TYPE_BITFIELD   = 0x00010000,
    FIELD_TYPE_NAMESPACE  = 0x00020000,
    FIELD_TYPE_MODULE     = 0x00040000,
    FIELD_TYPE_DYNAMIC    = 0x00080000,
    FIELD_TYPE_PROP       = 0x00100000,
    FIELD_TYPE_INNERCLASS = 0x00200000,
    FIELD_TYPE_REFERENCE  = 0x00400000,
    FIELD_TYPE_EXTENDED   = 0x00800000,

    // Specific information about symbols
    FIELD_SYM_MEMBER      = 0x01000000,
    FIELD_SYM_LOCAL       = 0x02000000,
    FIELD_SYM_PARAM       = 0x04000000,
    FIELD_SYM_THIS        = 0x08000000,
    FIELD_SYM_GLOBAL      = 0x10000000,
    FIELD_SYM_PROP_GETTER = 0x20000000,
    FIELD_SYM_PROP_SETTER = 0x40000000,
    FIELD_SYM_EXTENDED    = 0x80000000,

    FIELD_KIND_MASK       = 0x0000000f,
    FIELD_TYPE_MASK       = 0x00fffff0,
    FIELD_SYM_MASK        = 0xff000000,

    FIELD_KIND_ALL        = 0xffffffff
};
typedef DWORD FIELD_KIND;
public enum enum_FIELD_KIND {
    FIELD_KIND_NONE       = 0x00000000,

    // Type of field
    FIELD_KIND_TYPE       = 0x00000001,
    FIELD_KIND_SYMBOL     = 0x00000002,

    // Storage type of the field
    FIELD_TYPE_PRIMITIVE  = 0x00000010,
    FIELD_TYPE_STRUCT     = 0x00000020,
    FIELD_TYPE_CLASS      = 0x00000040,
    FIELD_TYPE_INTERFACE  = 0x00000080,
    FIELD_TYPE_UNION      = 0x00000100,
    FIELD_TYPE_ARRAY      = 0x00000200,
    FIELD_TYPE_METHOD     = 0x00000400,
    FIELD_TYPE_BLOCK      = 0x00000800,
    FIELD_TYPE_POINTER    = 0x00001000,
    FIELD_TYPE_ENUM       = 0x00002000,
    FIELD_TYPE_LABEL      = 0x00004000,
    FIELD_TYPE_TYPEDEF    = 0x00008000,
    FIELD_TYPE_BITFIELD   = 0x00010000,
    FIELD_TYPE_NAMESPACE  = 0x00020000,
    FIELD_TYPE_MODULE     = 0x00040000,
    FIELD_TYPE_DYNAMIC    = 0x00080000,
    FIELD_TYPE_PROP       = 0x00100000,
    FIELD_TYPE_INNERCLASS = 0x00200000,
    FIELD_TYPE_REFERENCE  = 0x00400000,
    FIELD_TYPE_EXTENDED   = 0x00800000,

    // Specific information about symbols
    FIELD_SYM_MEMBER      = 0x01000000,
    FIELD_SYM_LOCAL       = 0x02000000,
    FIELD_SYM_PARAM       = 0x04000000,
    FIELD_SYM_THIS        = 0x08000000,
    FIELD_SYM_GLOBAL      = 0x10000000,
    FIELD_SYM_PROP_GETTER = 0x20000000,
    FIELD_SYM_PROP_SETTER = 0x40000000,
    FIELD_SYM_EXTENDED    = 0x80000000,

    FIELD_KIND_MASK       = 0x0000000f,
    FIELD_TYPE_MASK       = 0x00fffff0,
    FIELD_SYM_MASK        = 0xff000000,

    FIELD_KIND_ALL        = 0xffffffff
};

MembrosMembers

FIELD_KIND_TYPE indica que o campo é somente um tipo.FIELD_KIND_TYPE Indicates that the field is a type only.

FIELD_KIND_SYMBOL indica que o campo é um símbolo, com tipo, nome e outras informações.FIELD_KIND_SYMBOL Indicates that the field is a symbol, with type, name, and other information.

FIELD_TYPE_PRIMITIVE indica que o campo é um tipo de dados primitivo.FIELD_TYPE_PRIMITIVE Indicates that the field is a primitive data type.

FIELD_TYPE_STRUCT indica que o campo é uma estrutura.FIELD_TYPE_STRUCT Indicates that the field is a structure.

FIELD_TYPE_CLASS indica que o campo é uma classe.FIELD_TYPE_CLASS Indicates that the field is a class.

FIELD_TYPE_INTERFACE indica que o campo é uma interface.FIELD_TYPE_INTERFACE Indicates that the field is an interface.

FIELD_TYPE_UNION indica que o campo é uma união.FIELD_TYPE_UNION Indicates that the field is a union.

FIELD_TYPE_ARRAY indica que o campo é uma matriz.FIELD_TYPE_ARRAY Indicates that the field is an array.

FIELD_TYPE_METHOD indica que o campo é um método.FIELD_TYPE_METHOD Indicates that the field is a method.

FIELD_TYPE_BLOCK indica que o campo é um bloco.FIELD_TYPE_BLOCK Indicates that the field is a block.

FIELD_TYPE_POINTER indica que o campo é um ponteiro.FIELD_TYPE_POINTER Indicates that the field is a pointer.

FIELD_TYPE_ENUM indica que o campo é um tipo de dados enumerado.FIELD_TYPE_ENUM Indicates that the field is an enumerated data type.

FIELD_TYPE_LABEL indica que o campo é um rótulo.FIELD_TYPE_LABEL Indicates that the field is a label.

FIELD_TYPE_TYPEDEF indica que o campo é um typedef.FIELD_TYPE_TYPEDEF Indicates that the field is a typedef.

FIELD_TYPE_BITFIELD indica que o campo é um campo de bits.FIELD_TYPE_BITFIELD Indicates that the field is a bitfield.

FIELD_TYPE_NAMESPACE indica que o campo é um namespace.FIELD_TYPE_NAMESPACE Indicates that the field is a namespace.

FIELD_TYPE_MODULE indica que o campo é um módulo.FIELD_TYPE_MODULE Indicates that the field is a module.

FIELD_TYPE_DYNAMIC indica que o campo é dinâmico.FIELD_TYPE_DYNAMIC Indicates that the field is dynamic.

FIELD_TYPE_PROP indica que o campo é uma propriedade.FIELD_TYPE_PROP Indicates that the field is a property.

FIELD_TYPE_INNERCLASS indica que o campo é uma classe interna.FIELD_TYPE_INNERCLASS Indicates that the field is an inner class.

FIELD_TYPE_REFERENCE indica que o campo é uma referência.FIELD_TYPE_REFERENCE Indicates that the field is a reference.

FIELD_TYPE_EXTENDED reservado para uso futuro.FIELD_TYPE_EXTENDED Reserved for future use.

FIELD_SYM_MEMBER indica que o campo é um membro.FIELD_SYM_MEMBER Indicates that the field is a member.

FIELD_SYM_LOCAL indica que o campo é local.FIELD_SYM_LOCAL Indicates that the field is local.

FIELD_SYM_PARAMETER indica que o campo é um parâmetro.FIELD_SYM_PARAMETER Indicates that the field is a parameter.

FIELD_SYM_THIS indica que o campo é o ponteiro "this".FIELD_SYM_THIS Indicates that the field is the "this" pointer.

FIELD_SYM_GLOBAL indica que o campo é global.FIELD_SYM_GLOBAL Indicates that the field is global.

FIELD_SYM_PROP_GETTER indica que o campo recupera as propriedades.FIELD_SYM_PROP_GETTER Indicates that the field retrieves properties.

FIELD_SYM_PROP_SETTER indica que o campo define as propriedades.FIELD_SYM_PROP_SETTER Indicates that the field sets properties.

FIELD_SYM_EXTENDED reservado para uso futuro.FIELD_SYM_EXTENDED Reserved for future use.

FIELD_KIND_MASK indica uma máscara para os tipos de campo.FIELD_KIND_MASK Indicates a mask for field kinds.

FIELD_TYPE_MASK indica uma máscara para tipos de campo.FIELD_TYPE_MASK Indicates a mask for field types.

FIELD_SYM_MASK indica uma máscara para informações de símbolo.FIELD_SYM_MASK Indicates a mask for symbol information.

ComentáriosRemarks

Retornado de uma chamada para o GetKind método.Returned from a call to the GetKind method.

Dependendo do tipo de campo, QueryInterface pode ser chamado na IDebugField interface para a forma mais específica de interface.Depending on the kind of field, QueryInterface can be called on the IDebugField interface for a more specific form of interface. Por exemplo, se GetKind retorna FIELD_TYPE_METHOD, em seguida, você pode chamar QueryInterface emDebugField para obter o IDebugMethodField interface.For example, if GetKind returns FIELD_TYPE_METHOD, you can then call QueryInterface on IDebugField to obtain the IDebugMethodField interface.

RequisitosRequirements

Header: sh.hHeader: sh.h

Namespace: Microsoft.VisualStudio.Debugger.InteropNamespace: Microsoft.VisualStudio.Debugger.Interop

Assembly: Microsoft.VisualStudio.Debugger.Interop.dllAssembly: Microsoft.VisualStudio.Debugger.Interop.dll

Consulte tambémSee Also