Latest available version: IDA and decompilers v8.4.240320sp1 see all releases
Hex-Rays logo State-of-the-art binary code analysis tools
email icon
Find UDT member flags

used by 'strmem_flags' parameter to find_udm() More...

Macros

#define STRMEM_MASK   0x0007
 
#define STRMEM_OFFSET   0x0000
 get member by offset More...
 
#define STRMEM_INDEX   0x0001
 get member by number More...
 
#define STRMEM_AUTO   0x0002
 get member by offset if struct, or get member by index if union More...
 
#define STRMEM_NAME   0x0003
 get member by name More...
 
#define STRMEM_TYPE   0x0004
 get member by type. More...
 
#define STRMEM_SIZE   0x0005
 get member by size. More...
 
#define STRMEM_MINS   0x0006
 get smallest member by size.
 
#define STRMEM_MAXS   0x0007
 get biggest member by size.
 
#define STRMEM_VFTABLE   0x10000000
 can be combined with STRMEM_OFFSET, STRMEM_AUTO get vftable instead of the base class
 
#define STRMEM_SKIP_EMPTY   0x20000000
 can be combined with STRMEM_OFFSET, STRMEM_AUTO skip empty members (i.e. More...
 
#define STRMEM_CASTABLE_TO   0x40000000
 can be combined with STRMEM_TYPE: member type must be castable to the specified type
 
#define STRMEM_ANON   0x80000000
 can be combined with STRMEM_NAME: look inside anonymous members too. More...
 

Detailed Description

used by 'strmem_flags' parameter to find_udm()

Macro Definition Documentation

◆ STRMEM_OFFSET

#define STRMEM_OFFSET   0x0000

get member by offset

  • in: udm->offset - is a member offset in bits

◆ STRMEM_INDEX

#define STRMEM_INDEX   0x0001

get member by number

  • in: udm->offset - is a member number

◆ STRMEM_AUTO

#define STRMEM_AUTO   0x0002

get member by offset if struct, or get member by index if union

  • nb: union: index is stored in the udm->offset field!
  • nb: struct: offset is in bytes (not in bits)!

◆ STRMEM_NAME

#define STRMEM_NAME   0x0003

get member by name

  • in: udm->name - the desired member name.

◆ STRMEM_TYPE

#define STRMEM_TYPE   0x0004

get member by type.

  • in: udm->type - the desired member type. member types are compared with tinfo_t::equals_to()

◆ STRMEM_SIZE

#define STRMEM_SIZE   0x0005

get member by size.

  • in: udm->size - the desired member size.

◆ STRMEM_SKIP_EMPTY

#define STRMEM_SKIP_EMPTY   0x20000000

can be combined with STRMEM_OFFSET, STRMEM_AUTO skip empty members (i.e.

having zero size) only last empty member can be returned

◆ STRMEM_ANON

#define STRMEM_ANON   0x80000000

can be combined with STRMEM_NAME: look inside anonymous members too.