2
**********************************************************************
3
* Copyright (C) 2000-2001, International Business Machines
4
* Corporation and others. All Rights Reserved.
5
**********************************************************************
11
#include "unicode/ures.h"
15
#define kRootLocaleName "root"
18
The default minor version and the version separator must be exactly one
22
#define kDefaultMinorVersion "0"
23
#define kVersionSeparator "."
24
#define kVersionTag "Version"
26
#define MAGIC1 19700503
27
#define MAGIC2 19641227
33
ENTRY_GOTO_DEFAULT = 2,
37
typedef enum UResEntryType UResEntryType;
40
struct UResourceDataEntry;
41
typedef struct UResourceDataEntry UResourceDataEntry;
43
struct UResourceDataEntry {
44
char *fName; /* name of the locale for bundle - still to decide whether it is original or fallback */
45
char *fPath; /* path to bundle - used for distinguishing between resources with the same name */
46
uint32_t fCountExisting; /* how much is this resource used */
47
ResourceData fData; /* data for low level access */
48
UResourceDataEntry *fParent; /*next resource in fallback chain*/
49
/* UResEntryType fStatus;*/
51
int32_t fHashKey; /* for faster access in the hashtable */
54
struct UResourceBundle {
55
const char *fKey; /*tag*/
61
/*UBool fIsStackObject;*/
62
UResourceDataEntry *fData; /*for low-level access*/
65
ResourceData fResData;
69
U_CFUNC void ures_setIsStackObject( UResourceBundle* resB, UBool state);
70
U_CFUNC UBool ures_isStackObject( UResourceBundle* resB);
72
/* Some getters used by the copy constructor */
73
U_CFUNC const char* ures_getName(const UResourceBundle* resB);
74
U_CFUNC const char* ures_getPath(const UResourceBundle* resB);
76
/* Candidates for export */
77
U_CFUNC UResourceBundle *ures_copyResb(UResourceBundle *r, const UResourceBundle *original, UErrorCode *status);