Class BEncodedDictionary
Class representing a BEncoded Dictionary
Inheritance
System.Object
BEncodedDictionary
Implements
System.Collections.IEnumerable
Inherited Members
System.Object.Equals(System.Object, System.Object)
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
Assembly: MonoTorrent.dll
Syntax
public class BEncodedDictionary : BEncodedValue, IDictionary<BEncodedString, BEncodedValue>, ICollection<KeyValuePair<BEncodedString, BEncodedValue>>, IEnumerable<KeyValuePair<BEncodedString, BEncodedValue>>, IEnumerable
Constructors
BEncodedDictionary()
Create a new BEncodedDictionary
Declaration
public BEncodedDictionary()
Properties
Count
Declaration
public int Count { get; }
Property Value
| Type |
Description |
| System.Int32 |
|
IsReadOnly
Declaration
public bool IsReadOnly { get; }
Property Value
| Type |
Description |
| System.Boolean |
|
Item[BEncodedString]
Declaration
public BEncodedValue this[BEncodedString key] { get; set; }
Parameters
Property Value
Keys
Declaration
public ICollection<BEncodedString> Keys { get; }
Property Value
| Type |
Description |
| System.Collections.Generic.ICollection<BEncodedString> |
|
Values
Declaration
public ICollection<BEncodedValue> Values { get; }
Property Value
| Type |
Description |
| System.Collections.Generic.ICollection<BEncodedValue> |
|
Methods
Add(BEncodedString, BEncodedValue)
Declaration
public void Add(BEncodedString key, BEncodedValue value)
Parameters
Add(KeyValuePair<BEncodedString, BEncodedValue>)
Declaration
public void Add(KeyValuePair<BEncodedString, BEncodedValue> item)
Parameters
Clear()
Declaration
Contains(KeyValuePair<BEncodedString, BEncodedValue>)
Declaration
public bool Contains(KeyValuePair<BEncodedString, BEncodedValue> item)
Parameters
Returns
| Type |
Description |
| System.Boolean |
|
ContainsKey(BEncodedString)
Declaration
public bool ContainsKey(BEncodedString key)
Parameters
Returns
| Type |
Description |
| System.Boolean |
|
CopyTo(KeyValuePair<BEncodedString, BEncodedValue>[], Int32)
Declaration
public void CopyTo(KeyValuePair<BEncodedString, BEncodedValue>[] array, int arrayIndex)
Parameters
DecodeTorrent(RawReader)
Special decoding method for torrent files - allows dictionary attributes to be out of order for the
overall torrent file, but imposes strict rules on the info dictionary.
Declaration
public static (BEncodedDictionary torrent, InfoHash infohash) DecodeTorrent(RawReader reader)
Parameters
Returns
DecodeTorrent(Byte[])
Declaration
public static (BEncodedDictionary torrent, InfoHash infohash) DecodeTorrent(byte[] bytes)
Parameters
| Type |
Name |
Description |
| System.Byte[] |
bytes |
|
Returns
DecodeTorrent(Stream)
Declaration
public static (BEncodedDictionary torrent, InfoHash infohash) DecodeTorrent(Stream s)
Parameters
| Type |
Name |
Description |
| System.IO.Stream |
s |
|
Returns
Encode(Byte[], Int32)
Encodes the dictionary to a byte[]
Declaration
public override int Encode(byte[] buffer, int offset)
Parameters
| Type |
Name |
Description |
| System.Byte[] |
buffer |
The buffer to encode the data to
|
| System.Int32 |
offset |
The offset to start writing the data to
|
Returns
| Type |
Description |
| System.Int32 |
|
Overrides
Equals(Object)
Declaration
public override bool Equals(object obj)
Parameters
| Type |
Name |
Description |
| System.Object |
obj |
|
Returns
| Type |
Description |
| System.Boolean |
|
Overrides
System.Object.Equals(System.Object)
GetEnumerator()
Declaration
public IEnumerator<KeyValuePair<BEncodedString, BEncodedValue>> GetEnumerator()
Returns
GetHashCode()
Declaration
public override int GetHashCode()
Returns
| Type |
Description |
| System.Int32 |
|
Overrides
System.Object.GetHashCode()
GetValueOrDefault(BEncodedString)
Declaration
public BEncodedValue GetValueOrDefault(BEncodedString key)
Parameters
Returns
GetValueOrDefault(BEncodedString, BEncodedValue)
Declaration
public BEncodedValue GetValueOrDefault(BEncodedString key, BEncodedValue defaultValue)
Parameters
Returns
LengthInBytes()
Returns the size of the dictionary in bytes using UTF8 encoding
Declaration
public override int LengthInBytes()
Returns
| Type |
Description |
| System.Int32 |
|
Overrides
Remove(BEncodedString)
Declaration
public bool Remove(BEncodedString key)
Parameters
Returns
| Type |
Description |
| System.Boolean |
|
Remove(KeyValuePair<BEncodedString, BEncodedValue>)
Declaration
public bool Remove(KeyValuePair<BEncodedString, BEncodedValue> item)
Parameters
Returns
| Type |
Description |
| System.Boolean |
|
ToString()
Declaration
public override string ToString()
Returns
| Type |
Description |
| System.String |
|
Overrides
System.Object.ToString()
TryGetValue(BEncodedString, out BEncodedValue)
Declaration
public bool TryGetValue(BEncodedString key, out BEncodedValue value)
Parameters
Returns
| Type |
Description |
| System.Boolean |
|
Explicit Interface Implementations
IEnumerable.GetEnumerator()
Declaration
IEnumerator IEnumerable.GetEnumerator()
Returns
| Type |
Description |
| System.Collections.IEnumerator |
|
Implements
System.Collections.Generic.IDictionary<TKey, TValue>
System.Collections.Generic.ICollection<T>
System.Collections.Generic.IEnumerable<T>
System.Collections.IEnumerable