Class: MachO::LoadCommands::DysymtabCommand

Inherits:
LoadCommand show all
Defined in:
lib/macho/load_commands.rb

Overview

A load command containing symbolic information needed to support data structures used by the dynamic link editor. Corresponds to LC_DYSYMTAB.

Constant Summary collapse

FORMAT =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

"L=20".freeze
SIZEOF =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

80

Instance Attribute Summary collapse

Attributes inherited from LoadCommand

#cmd, #cmdsize, #view

Instance Method Summary collapse

Methods inherited from LoadCommand

create, new_from_bin, #offset, #serializable?, #serialize, #to_s, #type

Methods inherited from MachOStructure

bytesize, new_from_bin

Constructor Details

#initialize(view, cmd, cmdsize, ilocalsym, nlocalsym, iextdefsym, nextdefsym, iundefsym, nundefsym, tocoff, ntoc, modtaboff, nmodtab, extrefsymoff, nextrefsyms, indirectsymoff, nindirectsyms, extreloff, nextrel, locreloff, nlocrel) ⇒ DysymtabCommand

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

ugh



990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
# File 'lib/macho/load_commands.rb', line 990

def initialize(view, cmd, cmdsize, ilocalsym, nlocalsym, iextdefsym,
               nextdefsym, iundefsym, nundefsym, tocoff, ntoc, modtaboff,
               nmodtab, extrefsymoff, nextrefsyms, indirectsymoff,
               nindirectsyms, extreloff, nextrel, locreloff, nlocrel)
  super(view, cmd, cmdsize)
  @ilocalsym = ilocalsym
  @nlocalsym = nlocalsym
  @iextdefsym = iextdefsym
  @nextdefsym = nextdefsym
  @iundefsym = iundefsym
  @nundefsym = nundefsym
  @tocoff = tocoff
  @ntoc = ntoc
  @modtaboff = modtaboff
  @nmodtab = nmodtab
  @extrefsymoff = extrefsymoff
  @nextrefsyms = nextrefsyms
  @indirectsymoff = indirectsymoff
  @nindirectsyms = nindirectsyms
  @extreloff = extreloff
  @nextrel = nextrel
  @locreloff = locreloff
  @nlocrel = nlocrel
end

Instance Attribute Details

#extrefsymoffInteger (readonly)

Returns the file offset to the referenced symbol table.

Returns:

  • (Integer)

    the file offset to the referenced symbol table



957
958
959
# File 'lib/macho/load_commands.rb', line 957

def extrefsymoff
  @extrefsymoff
end

#extreloffInteger (readonly)

Returns the file offset to the external relocation entries.

Returns:

  • (Integer)

    the file offset to the external relocation entries



969
970
971
# File 'lib/macho/load_commands.rb', line 969

def extreloff
  @extreloff
end

#iextdefsymInteger (readonly)

Returns the index to externally defined symbols.

Returns:

  • (Integer)

    the index to externally defined symbols



933
934
935
# File 'lib/macho/load_commands.rb', line 933

def iextdefsym
  @iextdefsym
end

#ilocalsymInteger (readonly)

Returns the index to local symbols.

Returns:

  • (Integer)

    the index to local symbols



927
928
929
# File 'lib/macho/load_commands.rb', line 927

def ilocalsym
  @ilocalsym
end

#indirectsymoffInteger (readonly)

Returns the file offset to the indirect symbol table.

Returns:

  • (Integer)

    the file offset to the indirect symbol table



963
964
965
# File 'lib/macho/load_commands.rb', line 963

def indirectsymoff
  @indirectsymoff
end

#iundefsymInteger (readonly)

Returns the index to undefined symbols.

Returns:

  • (Integer)

    the index to undefined symbols



939
940
941
# File 'lib/macho/load_commands.rb', line 939

def iundefsym
  @iundefsym
end

#locreloffInteger (readonly)

Returns the file offset to the local relocation entries.

Returns:

  • (Integer)

    the file offset to the local relocation entries



975
976
977
# File 'lib/macho/load_commands.rb', line 975

def locreloff
  @locreloff
end

#modtaboffInteger (readonly)

Returns the file offset to the module table.

Returns:

  • (Integer)

    the file offset to the module table



951
952
953
# File 'lib/macho/load_commands.rb', line 951

def modtaboff
  @modtaboff
end

#nextdefsymInteger (readonly)

Returns the number of externally defined symbols.

Returns:

  • (Integer)

    the number of externally defined symbols



936
937
938
# File 'lib/macho/load_commands.rb', line 936

def nextdefsym
  @nextdefsym
end

#nextrefsymsInteger (readonly)

Returns the number of entries in the referenced symbol table.

Returns:

  • (Integer)

    the number of entries in the referenced symbol table



960
961
962
# File 'lib/macho/load_commands.rb', line 960

def nextrefsyms
  @nextrefsyms
end

#nextrelInteger (readonly)

Returns the number of external relocation entries.

Returns:

  • (Integer)

    the number of external relocation entries



972
973
974
# File 'lib/macho/load_commands.rb', line 972

def nextrel
  @nextrel
end

#nindirectsymsInteger (readonly)

Returns the number of entries in the indirect symbol table.

Returns:

  • (Integer)

    the number of entries in the indirect symbol table



966
967
968
# File 'lib/macho/load_commands.rb', line 966

def nindirectsyms
  @nindirectsyms
end

#nlocalsymInteger (readonly)

Returns the number of local symbols.

Returns:

  • (Integer)

    the number of local symbols



930
931
932
# File 'lib/macho/load_commands.rb', line 930

def nlocalsym
  @nlocalsym
end

#nlocrelInteger (readonly)

Returns the number of local relocation entries.

Returns:

  • (Integer)

    the number of local relocation entries



978
979
980
# File 'lib/macho/load_commands.rb', line 978

def nlocrel
  @nlocrel
end

#nmodtabInteger (readonly)

Returns the number of entries in the module table.

Returns:

  • (Integer)

    the number of entries in the module table



954
955
956
# File 'lib/macho/load_commands.rb', line 954

def nmodtab
  @nmodtab
end

#ntocInteger (readonly)

Returns the number of entries in the table of contents.

Returns:

  • (Integer)

    the number of entries in the table of contents



948
949
950
# File 'lib/macho/load_commands.rb', line 948

def ntoc
  @ntoc
end

#nundefsymInteger (readonly)

Returns the number of undefined symbols.

Returns:

  • (Integer)

    the number of undefined symbols



942
943
944
# File 'lib/macho/load_commands.rb', line 942

def nundefsym
  @nundefsym
end

#tocoffInteger (readonly)

Returns the file offset to the table of contents.

Returns:

  • (Integer)

    the file offset to the table of contents



945
946
947
# File 'lib/macho/load_commands.rb', line 945

def tocoff
  @tocoff
end

Instance Method Details

#to_hHash

Returns a hash representation of this MachO::LoadCommands::DysymtabCommand.

Returns:



1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
# File 'lib/macho/load_commands.rb', line 1016

def to_h
  {
    "ilocalsym" => ilocalsym,
    "nlocalsym" => nlocalsym,
    "iextdefsym" => iextdefsym,
    "nextdefsym" => nextdefsym,
    "iundefsym" => iundefsym,
    "nundefsym" => nundefsym,
    "tocoff" => tocoff,
    "ntoc" => ntoc,
    "modtaboff" => modtaboff,
    "nmodtab" => nmodtab,
    "extrefsymoff" => extrefsymoff,
    "nextrefsyms" => nextrefsyms,
    "indirectsymoff" => indirectsymoff,
    "nindirectsyms" => nindirectsyms,
    "extreloff" => extreloff,
    "nextrel" => nextrel,
    "locreloff" => locreloff,
    "nlocrel" => nlocrel,
  }.merge super
end