2003-12-13 Zoltan Varga <vargaz@freemail.hu>
[mono.git] / mono / metadata / locales.h
1 /*
2  * locales.h: Culture-sensitive handling
3  *
4  * Authors:
5  *      Dick Porter (dick@ximian.com)
6  *
7  * (C) 2003 Ximian, Inc.
8  */
9
10 #ifndef _MONO_METADATA_LOCALES_H_
11 #define _MONO_METADATA_LOCALES_H_
12
13 #include <glib.h>
14
15 #include <mono/metadata/object.h>
16
17 /* This is a copy of System.Globalization.CompareOptions */
18 typedef enum {
19         CompareOptions_None=0x00,
20         CompareOptions_IgnoreCase=0x01,
21         CompareOptions_IgnoreNonSpace=0x02,
22         CompareOptions_IgnoreSymbols=0x04,
23         CompareOptions_IgnoreKanaType=0x08,
24         CompareOptions_IgnoreWidth=0x10,
25         CompareOptions_StringSort=0x20000000,
26         CompareOptions_Ordinal=0x40000000
27 } MonoCompareOptions;
28
29 extern void ves_icall_System_Globalization_CultureInfo_construct_internal_locale (MonoCultureInfo *this, MonoString *locale);
30 extern void ves_icall_System_Globalization_CompareInfo_construct_compareinfo (MonoCompareInfo *comp, MonoString *locale);
31 extern int ves_icall_System_Globalization_CompareInfo_internal_compare (MonoCompareInfo *this, MonoString *str1, gint32 off1, gint32 len1, MonoString *str2, gint32 off2, gint32 len2, gint32 options);
32 extern void ves_icall_System_Globalization_CompareInfo_free_internal_collator (MonoCompareInfo *this);
33 extern void ves_icall_System_Globalization_CompareInfo_assign_sortkey (MonoCompareInfo *this, MonoSortKey *key, MonoString *source, gint32 options);
34 extern int ves_icall_System_Globalization_CompareInfo_internal_index (MonoCompareInfo *this, MonoString *source, gint32 sindex, gint32 count, MonoString *value, gint32 options, MonoBoolean first);
35 extern int ves_icall_System_Globalization_CompareInfo_internal_index_char (MonoCompareInfo *this, MonoString *source, gint32 sindex, gint32 count, gunichar2 value, gint32 options, MonoBoolean first);
36 extern int ves_icall_System_Threading_Thread_current_lcid (void);
37 extern MonoString *ves_icall_System_String_InternalReplace_Str_Comp (MonoString *this, MonoString *old, MonoString *new, MonoCompareInfo *comp);
38 extern MonoString *ves_icall_System_String_InternalToLower_Comp (MonoString *this, MonoCultureInfo *cult);
39 extern MonoString *ves_icall_System_String_InternalToUpper_Comp (MonoString *this, MonoCultureInfo *cult);
40
41 #endif /* _MONO_METADATA_FILEIO_H_ */