| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- namespace Ryujinx.HLE.Loaders.Elf
- {
- struct ElfSymbol
- {
- public string Name { get; private set; }
- public ElfSymbolType Type { get; private set; }
- public ElfSymbolBinding Binding { get; private set; }
- public ElfSymbolVisibility Visibility { get; private set; }
- public bool IsFuncOrObject =>
- Type == ElfSymbolType.SttFunc ||
- Type == ElfSymbolType.SttObject;
- public bool IsGlobalOrWeak =>
- Binding == ElfSymbolBinding.StbGlobal ||
- Binding == ElfSymbolBinding.StbWeak;
- public int ShIdx { get; private set; }
- public long Value { get; private set; }
- public long Size { get; private set; }
- public ElfSymbol(
- string name,
- int info,
- int other,
- int shIdx,
- long value,
- long size)
- {
- Name = name;
- Type = (ElfSymbolType)(info & 0xf);
- Binding = (ElfSymbolBinding)(info >> 4);
- Visibility = (ElfSymbolVisibility)other;
- ShIdx = shIdx;
- Value = value;
- Size = size;
- }
- }
- }
|