mirror of https://github.com/FreeRDP/FreeRDP
libwinpr-utils/collections: stubbed more classes
This commit is contained in:
parent
5a131688e4
commit
b92d2cf30f
|
@ -120,4 +120,31 @@ WINPR_API int ArrayList_LastIndexOf(wArrayList* arrayList, void* obj, int startI
|
|||
WINPR_API wArrayList* ArrayList_New(BOOL synchronized);
|
||||
WINPR_API void ArrayList_Free(wArrayList* arrayList);
|
||||
|
||||
/* System.Collections.DictionaryBase */
|
||||
|
||||
struct _wDictionary
|
||||
{
|
||||
BOOL synchronized;
|
||||
HANDLE mutex;
|
||||
};
|
||||
typedef struct _wDictionary wDictionary;
|
||||
|
||||
/* System.Collections.Specialized.ListDictionary */
|
||||
|
||||
struct _wListDictionary
|
||||
{
|
||||
BOOL synchronized;
|
||||
HANDLE mutex;
|
||||
};
|
||||
typedef struct _wListDictionary wListDictionary;
|
||||
|
||||
/* System.Collections.Generic.KeyValuePair<TKey,TValue> */
|
||||
|
||||
struct _wKeyValuePair
|
||||
{
|
||||
void* key;
|
||||
void* value;
|
||||
};
|
||||
typedef struct _wKeyValuePair wKeyValuePair;
|
||||
|
||||
#endif /* WINPR_COLLECTIONS_H */
|
||||
|
|
|
@ -21,7 +21,10 @@ set(MODULE_PREFIX "WINPR_UTILS")
|
|||
set(${MODULE_PREFIX}_COLLECTIONS_SRCS
|
||||
collections/Queue.c
|
||||
collections/Stack.c
|
||||
collections/ArrayList.c)
|
||||
collections/ArrayList.c
|
||||
collections/Dictionary.c
|
||||
collections/ListDictionary.c
|
||||
collections/KeyValuePair.c)
|
||||
|
||||
set(${MODULE_PREFIX}_SRCS
|
||||
sam.c
|
||||
|
|
|
@ -0,0 +1,133 @@
|
|||
/**
|
||||
* WinPR: Windows Portable Runtime
|
||||
* System.Collections.DictionaryBase
|
||||
*
|
||||
* Copyright 2012 Marc-Andre Moreau <marcandre.moreau@gmail.com>
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <winpr/collections.h>
|
||||
|
||||
/**
|
||||
* C equivalent of the C# DictionaryBase Class:
|
||||
* http://msdn.microsoft.com/en-us/library/system.collections.dictionarybase.aspx
|
||||
*/
|
||||
|
||||
/**
|
||||
* Properties
|
||||
*/
|
||||
|
||||
/**
|
||||
* Gets the number of key/value pairs contained in the Dictionary.
|
||||
*/
|
||||
|
||||
int Dictionary_Count(wDictionary* dictionary)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a value indicating whether the Dictionary has a fixed size.
|
||||
*/
|
||||
|
||||
BOOL Dictionary_IsFixedSized(wDictionary* dictionary)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a value indicating whether the Dictionary is read-only.
|
||||
*/
|
||||
|
||||
BOOL Dictionary_IsReadOnly(wDictionary* dictionary)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a value indicating whether the Dictionary is synchronized (thread safe).
|
||||
*/
|
||||
|
||||
BOOL Dictionary_IsSynchronized(wDictionary* dictionary)
|
||||
{
|
||||
return dictionary->synchronized;
|
||||
}
|
||||
|
||||
/**
|
||||
* Methods
|
||||
*/
|
||||
|
||||
/**
|
||||
* Adds an entry with the specified key and value into the Dictionary.
|
||||
*/
|
||||
|
||||
void Dictionary_Add(wDictionary* dictionary, void* key, void* value)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes all entries from the Dictionary.
|
||||
*/
|
||||
|
||||
void Dictionary_Clear(wDictionary* dictionary)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Determines whether the Dictionary contains a specific key.
|
||||
*/
|
||||
|
||||
BOOL Dictionary_Contains(wDictionary* dictionary, void* key)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes the entry with the specified key from the Dictionary.
|
||||
*/
|
||||
|
||||
void Dictionary_Remove(wDictionary* dictionary, void* key)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Construction, Destruction
|
||||
*/
|
||||
|
||||
wDictionary* Dictionary_New(BOOL synchronized)
|
||||
{
|
||||
wDictionary* dictionary = NULL;
|
||||
|
||||
dictionary = (wDictionary*) malloc(sizeof(wDictionary));
|
||||
|
||||
if (dictionary)
|
||||
{
|
||||
dictionary->synchronized = synchronized;
|
||||
}
|
||||
|
||||
return dictionary;
|
||||
}
|
||||
|
||||
void Dictionary_Free(wDictionary* dictionary)
|
||||
{
|
||||
free(dictionary);
|
||||
}
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
/**
|
||||
* WinPR: Windows Portable Runtime
|
||||
* System.Collections.Generic.KeyValuePair<TKey,TValue>
|
||||
*
|
||||
* Copyright 2012 Marc-Andre Moreau <marcandre.moreau@gmail.com>
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <winpr/crt.h>
|
||||
|
||||
#include <winpr/collections.h>
|
||||
|
||||
/**
|
||||
* C equivalent of the C# KeyValuePair<TKey, TValue> Structure:
|
||||
* http://msdn.microsoft.com/en-us/library/5tbh8a42.aspx
|
||||
*/
|
||||
|
||||
wKeyValuePair* KeyValuePair_New(void* key, void* value)
|
||||
{
|
||||
wKeyValuePair* keyValuePair;
|
||||
|
||||
keyValuePair = (wKeyValuePair*) malloc(sizeof(wKeyValuePair));
|
||||
|
||||
keyValuePair->key = key;
|
||||
keyValuePair->value = value;
|
||||
|
||||
return keyValuePair;
|
||||
}
|
||||
|
||||
void KeyValuePair_Free(wKeyValuePair* keyValuePair)
|
||||
{
|
||||
free(keyValuePair);
|
||||
}
|
|
@ -0,0 +1,133 @@
|
|||
/**
|
||||
* WinPR: Windows Portable Runtime
|
||||
* System.Collections.Specialized.ListDictionary
|
||||
*
|
||||
* Copyright 2012 Marc-Andre Moreau <marcandre.moreau@gmail.com>
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <winpr/collections.h>
|
||||
|
||||
/**
|
||||
* C equivalent of the C# ListDictionary Class:
|
||||
* http://msdn.microsoft.com/en-us/library/system.collections.specialized.listdictionary.aspx
|
||||
*/
|
||||
|
||||
/**
|
||||
* Properties
|
||||
*/
|
||||
|
||||
/**
|
||||
* Gets the number of key/value pairs contained in the ListDictionary.
|
||||
*/
|
||||
|
||||
int ListDictionary_Count(wListDictionary* listDictionary)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a value indicating whether the ListDictionary has a fixed size.
|
||||
*/
|
||||
|
||||
BOOL ListDictionary_IsFixedSized(wListDictionary* listDictionary)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a value indicating whether the ListDictionary is read-only.
|
||||
*/
|
||||
|
||||
BOOL ListDictionary_IsReadOnly(wListDictionary* listDictionary)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a value indicating whether the ListDictionary is synchronized (thread safe).
|
||||
*/
|
||||
|
||||
BOOL ListDictionary_IsSynchronized(wListDictionary* listDictionary)
|
||||
{
|
||||
return listDictionary->synchronized;
|
||||
}
|
||||
|
||||
/**
|
||||
* Methods
|
||||
*/
|
||||
|
||||
/**
|
||||
* Adds an entry with the specified key and value into the ListDictionary.
|
||||
*/
|
||||
|
||||
void ListDictionary_Add(wListDictionary* listDictionary, void* key, void* value)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes all entries from the ListDictionary.
|
||||
*/
|
||||
|
||||
void ListDictionary_Clear(wListDictionary* listDictionary)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Determines whether the ListDictionary contains a specific key.
|
||||
*/
|
||||
|
||||
BOOL ListDictionary_Contains(wListDictionary* listDictionary, void* key)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes the entry with the specified key from the ListDictionary.
|
||||
*/
|
||||
|
||||
void ListDictionary_Remove(wListDictionary* listDictionary, void* key)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Construction, Destruction
|
||||
*/
|
||||
|
||||
wListDictionary* ListDictionary_New(BOOL synchronized)
|
||||
{
|
||||
wListDictionary* listDictionary = NULL;
|
||||
|
||||
listDictionary = (wListDictionary*) malloc(sizeof(wListDictionary));
|
||||
|
||||
if (listDictionary)
|
||||
{
|
||||
listDictionary->synchronized = synchronized;
|
||||
}
|
||||
|
||||
return listDictionary;
|
||||
}
|
||||
|
||||
void ListDictionary_Free(wListDictionary* listDictionary)
|
||||
{
|
||||
free(listDictionary);
|
||||
}
|
||||
|
Loading…
Reference in New Issue