Photon Unity Networking 2 2.45

Static Public Member Functions | List of all members
Extensions Class Reference

This static class defines some useful extension methods for several existing classes (e.g. Vector3, float and others). More...

Static Public Member Functions

static void Merge (this IDictionary target, IDictionary addHash)
 Merges all keys from addHash into the target. Adds new keys and updates the values of existing keys in target. More...
 
static void MergeStringKeys (this IDictionary target, IDictionary addHash)
 Merges keys of type string to target Hashtable. More...
 
static string ToStringFull (this IDictionary origin)
 Helper method for debugging of IDictionary content, including type-information. Using this is not performant. More...
 
static string ToStringFull< T > (this List< T > data)
 Helper method for debugging of List<T> content. Using this is not performant. More...
 
static string ToStringFull (this object[] data)
 Helper method for debugging of object[] content. Using this is not performant. More...
 
static Hashtable StripToStringKeys (this IDictionary original)
 This method copies all string-typed keys of the original into a new Hashtable. More...
 
static Hashtable StripToStringKeys (this Hashtable original)
 This method copies all string-typed keys of the original into a new Hashtable. More...
 
static void StripKeysWithNullValues (this IDictionary original)
 Removes all keys with null values. More...
 
static void StripKeysWithNullValues (this Hashtable original)
 Removes all keys with null values. More...
 
static bool Contains (this int[] target, int nr)
 Checks if a particular integer value is in an int-array. More...
 

Detailed Description

This static class defines some useful extension methods for several existing classes (e.g. Vector3, float and others).

Member Function Documentation

◆ Contains()

static bool Contains ( this int[]  target,
int  nr 
)
static

Checks if a particular integer value is in an int-array.

This might be useful to look up if a particular actorNumber is in the list of players of a room.

Parameters
targetThe array of ints to check.
nrThe number to lookup in target.
Returns
True if nr was found in target.

◆ Merge()

static void Merge ( this IDictionary  target,
IDictionary  addHash 
)
static

Merges all keys from addHash into the target. Adds new keys and updates the values of existing keys in target.

Parameters
targetThe IDictionary to update.
addHashThe IDictionary containing data to merge into target.

◆ MergeStringKeys()

static void MergeStringKeys ( this IDictionary  target,
IDictionary  addHash 
)
static

Merges keys of type string to target Hashtable.

Does not remove keys from target (so non-string keys CAN be in target if they were before).

Parameters
targetThe target IDictionary passed in plus all string-typed keys from the addHash.
addHashA IDictionary that should be merged partly into target to update it.

◆ StripKeysWithNullValues() [1/2]

static void StripKeysWithNullValues ( this Hashtable  original)
static

Removes all keys with null values.

Photon properties are removed by setting their value to null. Changes the original IDictionary! Uses lock(keysWithNullValue), which should be no problem in expected use cases.

Parameters
originalThe IDictionary to strip of keys with null value.

◆ StripKeysWithNullValues() [2/2]

static void StripKeysWithNullValues ( this IDictionary  original)
static

Removes all keys with null values.

Photon properties are removed by setting their value to null. Changes the original IDictionary! Uses lock(keysWithNullValue), which should be no problem in expected use cases.

Parameters
originalThe IDictionary to strip of keys with null value.

◆ StripToStringKeys() [1/2]

static Hashtable StripToStringKeys ( this Hashtable  original)
static

This method copies all string-typed keys of the original into a new Hashtable.

Does not recurse (!) into hashes that might be values in the root-hash. This does not modify the original.

Parameters
originalThe original IDictonary to get string-typed keys from.
Returns
New Hashtable containing only string-typed keys of the original.

◆ StripToStringKeys() [2/2]

static Hashtable StripToStringKeys ( this IDictionary  original)
static

This method copies all string-typed keys of the original into a new Hashtable.

Does not recurse (!) into hashes that might be values in the root-hash. This does not modify the original.

Parameters
originalThe original IDictonary to get string-typed keys from.
Returns
New Hashtable containing only string-typed keys of the original.

◆ ToStringFull() [1/2]

static string ToStringFull ( this IDictionary  origin)
static

Helper method for debugging of IDictionary content, including type-information. Using this is not performant.

Should only be used for debugging as necessary.

Parameters
originSome Dictionary or Hashtable.
Returns
String of the content of the IDictionary.

◆ ToStringFull() [2/2]

static string ToStringFull ( this object[]  data)
static

Helper method for debugging of object[] content. Using this is not performant.

Should only be used for debugging as necessary.

Parameters
dataAny object[].
Returns
A comma-separated string containing each value's ToString().

◆ ToStringFull< T >()

static string ToStringFull< T > ( this List< T >  data)
static

Helper method for debugging of List<T> content. Using this is not performant.

Should only be used for debugging as necessary.

Parameters
dataAny List<T> where T implements .ToString().
Returns
A comma-separated string containing each value's ToString().