C# Class dnSpy.Contracts.Hex.Operations.HexSearchServiceProvider

Creates HexSearchService instances that can search for bytes or strings
Show file Open project: 0xd4d/dnSpy Class Usage Examples

Public Methods

Method Description
CreateByteSearchService ( byte value ) : HexSearchService

Creates a HexSearchService that can search for byte values

CreateByteSearchService ( byte pattern, byte mask ) : HexSearchService

Creates a HexSearchService that can search for bytes

CreateByteSearchService ( double value, bool isBigEndian = false ) : HexSearchService

Creates a HexSearchService that can search for double values

CreateByteSearchService ( float value, bool isBigEndian = false ) : HexSearchService

Creates a HexSearchService that can search for float values

CreateByteSearchService ( int value, bool isBigEndian = false ) : HexSearchService

Creates a HexSearchService that can search for int values

CreateByteSearchService ( long value, bool isBigEndian = false ) : HexSearchService

Creates a HexSearchService that can search for long values

CreateByteSearchService ( sbyte value ) : HexSearchService

Creates a HexSearchService that can search for sbyte values

CreateByteSearchService ( short value, bool isBigEndian = false ) : HexSearchService

Creates a HexSearchService that can search for short values

CreateByteSearchService ( string pattern ) : HexSearchService

Creates a HexSearchService that can search for bytes. The wildcard character ? matches any nibble (upper or lower 4 bits) in a byte. Use IsValidByteSearchString(string) to validate the input before calling this method.

CreateByteSearchService ( uint value, bool isBigEndian = false ) : HexSearchService

Creates a HexSearchService that can search for uint values

CreateByteSearchService ( ulong value, bool isBigEndian = false ) : HexSearchService

Creates a HexSearchService that can search for ulong values

CreateByteSearchService ( ushort value, bool isBigEndian = false ) : HexSearchService

Creates a HexSearchService that can search for ushort values

CreateUtf16StringSearchService ( string pattern, bool isCaseSensitive, bool isBigEndian = false ) : HexSearchService

Creates a HexSearchService that can search for UTF-16 strings

CreateUtf8StringSearchService ( string pattern, bool isCaseSensitive ) : HexSearchService

Creates a HexSearchService that can search for UTF-8 strings

IsValidByteSearchString ( string pattern ) : bool

Checks whether pattern only contains valid characters and at least one valid character

Protected Methods

Method Description
HexSearchServiceProvider ( ) : System

Constructor

Private Methods

Method Description
GetByteLength ( string pattern ) : int
GetBytes ( double value, bool isBigEndian ) : byte[]
GetBytes ( float value, bool isBigEndian ) : byte[]
GetBytes ( uint value, bool isBigEndian ) : byte[]
GetBytes ( ulong value, bool isBigEndian ) : byte[]
GetBytes ( ushort value, bool isBigEndian ) : byte[]
HexToBin ( char c ) : int
SkipWhitespace ( string pattern, int index ) : int

Method Details

CreateByteSearchService() public method

Creates a HexSearchService that can search for byte values
public CreateByteSearchService ( byte value ) : HexSearchService
value byte Value to search for
return HexSearchService

CreateByteSearchService() public abstract method

Creates a HexSearchService that can search for bytes
public abstract CreateByteSearchService ( byte pattern, byte mask ) : HexSearchService
pattern byte Bytes to search for
mask byte Mask used when comparing values. This array must have the same length as
return HexSearchService

CreateByteSearchService() public method

Creates a HexSearchService that can search for double values
public CreateByteSearchService ( double value, bool isBigEndian = false ) : HexSearchService
value double Value to search for
isBigEndian bool true if big-endian, false if little-endian
return HexSearchService

CreateByteSearchService() public method

Creates a HexSearchService that can search for float values
public CreateByteSearchService ( float value, bool isBigEndian = false ) : HexSearchService
value float Value to search for
isBigEndian bool true if big-endian, false if little-endian
return HexSearchService

CreateByteSearchService() public method

Creates a HexSearchService that can search for int values
public CreateByteSearchService ( int value, bool isBigEndian = false ) : HexSearchService
value int Value to search for
isBigEndian bool true if big-endian, false if little-endian
return HexSearchService

CreateByteSearchService() public method

Creates a HexSearchService that can search for long values
public CreateByteSearchService ( long value, bool isBigEndian = false ) : HexSearchService
value long Value to search for
isBigEndian bool true if big-endian, false if little-endian
return HexSearchService

CreateByteSearchService() public method

Creates a HexSearchService that can search for sbyte values
public CreateByteSearchService ( sbyte value ) : HexSearchService
value sbyte Value to search for
return HexSearchService

CreateByteSearchService() public method

Creates a HexSearchService that can search for short values
public CreateByteSearchService ( short value, bool isBigEndian = false ) : HexSearchService
value short Value to search for
isBigEndian bool true if big-endian, false if little-endian
return HexSearchService

CreateByteSearchService() public method

Creates a HexSearchService that can search for bytes. The wildcard character ? matches any nibble (upper or lower 4 bits) in a byte. Use IsValidByteSearchString(string) to validate the input before calling this method.
public CreateByteSearchService ( string pattern ) : HexSearchService
pattern string Pattern. Supported characters: whitespace, hex digits and the wildcard character '?'
return HexSearchService

CreateByteSearchService() public method

Creates a HexSearchService that can search for uint values
public CreateByteSearchService ( uint value, bool isBigEndian = false ) : HexSearchService
value uint Value to search for
isBigEndian bool true if big-endian, false if little-endian
return HexSearchService

CreateByteSearchService() public method

Creates a HexSearchService that can search for ulong values
public CreateByteSearchService ( ulong value, bool isBigEndian = false ) : HexSearchService
value ulong Value to search for
isBigEndian bool true if big-endian, false if little-endian
return HexSearchService

CreateByteSearchService() public method

Creates a HexSearchService that can search for ushort values
public CreateByteSearchService ( ushort value, bool isBigEndian = false ) : HexSearchService
value ushort Value to search for
isBigEndian bool true if big-endian, false if little-endian
return HexSearchService

CreateUtf16StringSearchService() public abstract method

Creates a HexSearchService that can search for UTF-16 strings
public abstract CreateUtf16StringSearchService ( string pattern, bool isCaseSensitive, bool isBigEndian = false ) : HexSearchService
pattern string Pattern to search for
isCaseSensitive bool true if it's case sensitive, false if it's case insensitive
isBigEndian bool true if big-endian, false if little-endian
return HexSearchService

CreateUtf8StringSearchService() public abstract method

Creates a HexSearchService that can search for UTF-8 strings
public abstract CreateUtf8StringSearchService ( string pattern, bool isCaseSensitive ) : HexSearchService
pattern string Pattern to search for
isCaseSensitive bool true if it's case sensitive, false if it's case insensitive
return HexSearchService

HexSearchServiceProvider() protected method

Constructor
protected HexSearchServiceProvider ( ) : System
return System

IsValidByteSearchString() public method

Checks whether pattern only contains valid characters and at least one valid character
public IsValidByteSearchString ( string pattern ) : bool
pattern string Pattern
return bool