Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(13)

Unified Diff: source/tools/genrb/wrtjava.cpp

Issue 1621843002: ICU 56 update step 1 (Closed) Base URL: https://chromium.googlesource.com/chromium/deps/icu.git@561
Patch Set: Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « source/tools/genrb/wrtjava.c ('k') | source/tools/genrb/wrtxml.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: source/tools/genrb/wrtjava.cpp
diff --git a/source/tools/genrb/wrtjava.c b/source/tools/genrb/wrtjava.cpp
similarity index 88%
rename from source/tools/genrb/wrtjava.c
rename to source/tools/genrb/wrtjava.cpp
index 6239569d85e8939ccd8c6fe7642220108051c5e2..1788c8374feefaa1c63b2dc7edb06aa588b4f2be 100644
--- a/source/tools/genrb/wrtjava.c
+++ b/source/tools/genrb/wrtjava.cpp
@@ -1,12 +1,12 @@
/*
*******************************************************************************
*
-* Copyright (C) 2000-2012, International Business Machines
+* Copyright (C) 2000-2015, International Business Machines
* Corporation and others. All Rights Reserved.
*
*******************************************************************************
*
-* File wrtjava.c
+* File wrtjava.cpp
*
* Modification History:
*
@@ -18,6 +18,7 @@
*/
#include <assert.h>
+#include "unicode/unistr.h"
#include "reslist.h"
#include "unewdata.h"
#include "unicode/ures.h"
@@ -100,7 +101,7 @@ static const char* enc ="";
static UConverter* conv = NULL;
static int32_t
-uCharsToChars( char* target,int32_t targetLen, UChar* source, int32_t sourceLen,UErrorCode* status){
+uCharsToChars(char *target, int32_t targetLen, const UChar *source, int32_t sourceLen, UErrorCode *status) {
int i=0, j=0;
char str[30]={'\0'};
while(i<sourceLen){
@@ -225,7 +226,7 @@ static int32_t getColumnCount(int32_t len){
return columnCount;
}
static void
-str_write_java( uint16_t* src, int32_t srcLen, UBool printEndLine, UErrorCode *status){
+str_write_java(const UChar *src, int32_t srcLen, UBool printEndLine, UErrorCode *status) {
uint32_t length = srcLen*8;
uint32_t bufLen = 0;
@@ -304,23 +305,14 @@ str_write_java( uint16_t* src, int32_t srcLen, UBool printEndLine, UErrorCode *s
/* Writing Functions */
static void
-string_write_java(struct SResource *res,UErrorCode *status) {
- char resKeyBuffer[8];
- const char *resname = res_getKeyString(srBundle, res, resKeyBuffer);
-
- str_write_java(res->u.fString.fChars,res->u.fString.fLength,TRUE,status);
-
- if(resname != NULL && uprv_strcmp(resname,"Rule")==0)
- {
- UChar* buf = (UChar*) uprv_malloc(sizeof(UChar)*res->u.fString.fLength);
- uprv_memcpy(buf,res->u.fString.fChars,res->u.fString.fLength);
- uprv_free(buf);
- }
+string_write_java(const StringResource *res,UErrorCode *status) {
+ (void)res->getKeyString(srBundle);
+ str_write_java(res->getBuffer(), res->length(), TRUE, status);
}
static void
-array_write_java( struct SResource *res, UErrorCode *status) {
+array_write_java(const ArrayResource *res, UErrorCode *status) {
uint32_t i = 0;
const char* arr ="new String[] { \n";
@@ -331,19 +323,19 @@ array_write_java( struct SResource *res, UErrorCode *status) {
return;
}
- if (res->u.fArray.fCount > 0) {
+ if (res->fCount > 0) {
- current = res->u.fArray.fFirst;
+ current = res->fFirst;
i = 0;
while(current != NULL){
- if(current->fType!=URES_STRING){
+ if(!current->isString()){
allStrings = FALSE;
break;
}
current= current->fNext;
}
- current = res->u.fArray.fFirst;
+ current = res->fFirst;
if(allStrings==FALSE){
const char* object = "new Object[]{\n";
write_tabs(out);
@@ -355,7 +347,7 @@ array_write_java( struct SResource *res, UErrorCode *status) {
tabCount++;
}
while (current != NULL) {
- /*if(current->fType==URES_STRING){
+ /*if(current->isString()){
write_tabs(out);
}*/
res_write_java(current, status);
@@ -380,13 +372,12 @@ array_write_java( struct SResource *res, UErrorCode *status) {
}
static void
-intvector_write_java( struct SResource *res, UErrorCode *status) {
+intvector_write_java(const IntVectorResource *res, UErrorCode * /*status*/) {
uint32_t i = 0;
const char* intArr = "new int[] {\n";
/* const char* intC = "new Integer("; */
const char* stringArr = "new String[]{\n";
- char resKeyBuffer[8];
- const char *resname = res_getKeyString(srBundle, res, resKeyBuffer);
+ const char *resname = res->getKeyString(srBundle);
char buf[100];
int len =0;
buf[0]=0;
@@ -395,9 +386,9 @@ intvector_write_java( struct SResource *res, UErrorCode *status) {
if(resname != NULL && uprv_strcmp(resname,"DateTimeElements")==0){
T_FileStream_write(out, stringArr, (int32_t)uprv_strlen(stringArr));
tabCount++;
- for(i = 0; i<res->u.fIntVector.fCount; i++) {
+ for(i = 0; i<res->fCount; i++) {
write_tabs(out);
- len=itostr(buf,res->u.fIntVector.fArray[i],10,0);
+ len=itostr(buf,res->fArray[i],10,0);
T_FileStream_write(out,"\"",1);
T_FileStream_write(out,buf,len);
T_FileStream_write(out,"\",",2);
@@ -406,10 +397,10 @@ intvector_write_java( struct SResource *res, UErrorCode *status) {
}else{
T_FileStream_write(out, intArr, (int32_t)uprv_strlen(intArr));
tabCount++;
- for(i = 0; i<res->u.fIntVector.fCount; i++) {
+ for(i = 0; i<res->fCount; i++) {
write_tabs(out);
/* T_FileStream_write(out, intC, (int32_t)uprv_strlen(intC)); */
- len=itostr(buf,res->u.fIntVector.fArray[i],10,0);
+ len=itostr(buf,res->fArray[i],10,0);
T_FileStream_write(out,buf,len);
/* T_FileStream_write(out,"),",2); */
/* T_FileStream_write(out,"\n",1); */
@@ -422,7 +413,7 @@ intvector_write_java( struct SResource *res, UErrorCode *status) {
}
static void
-int_write_java(struct SResource *res,UErrorCode *status) {
+int_write_java(const IntResource *res, UErrorCode * /*status*/) {
const char* intC = "new Integer(";
char buf[100];
int len =0;
@@ -431,25 +422,25 @@ int_write_java(struct SResource *res,UErrorCode *status) {
/* write the binary data */
write_tabs(out);
T_FileStream_write(out, intC, (int32_t)uprv_strlen(intC));
- len=itostr(buf, res->u.fIntValue.fValue, 10, 0);
+ len=itostr(buf, res->fValue, 10, 0);
T_FileStream_write(out,buf,len);
T_FileStream_write(out,"),\n",3 );
}
static void
-bytes_write_java( struct SResource *res, UErrorCode *status) {
+bytes_write_java(const BinaryResource *res, UErrorCode * /*status*/) {
const char* type = "new byte[] {";
const char* byteDecl = "%i, ";
char byteBuffer[100] = { 0 };
uint8_t* byteArray = NULL;
int byteIterator = 0;
- int32_t srcLen=res->u.fBinaryValue.fLength;
+ int32_t srcLen=res->fLength;
if(srcLen>0 )
{
- byteArray = res->u.fBinaryValue.fData;
+ byteArray = res->fData;
write_tabs(out);
T_FileStream_write(out, type, (int32_t)uprv_strlen(type));
@@ -504,7 +495,7 @@ bytes_write_java( struct SResource *res, UErrorCode *status) {
static UBool start = TRUE;
static void
-table_write_java(struct SResource *res, UErrorCode *status) {
+table_write_java(const TableResource *res, UErrorCode *status) {
uint32_t i = 0;
struct SResource *current = NULL;
const char* obj = "new Object[][]{\n";
@@ -513,22 +504,21 @@ table_write_java(struct SResource *res, UErrorCode *status) {
return ;
}
- if (res->u.fTable.fCount > 0) {
+ if (res->fCount > 0) {
if(start==FALSE){
write_tabs(out);
T_FileStream_write(out, obj, (int32_t)uprv_strlen(obj));
tabCount++;
}
start = FALSE;
- current = res->u.fTable.fFirst;
+ current = res->fFirst;
i = 0;
while (current != NULL) {
- char currentKeyBuffer[8];
- const char *currentKeyString = res_getKeyString(srBundle, current, currentKeyBuffer);
+ const char *currentKeyString = current->getKeyString(srBundle);
- assert(i < res->u.fTable.fCount);
+ assert(i < res->fCount);
write_tabs(out);
T_FileStream_write(out, openBrace, 2);
@@ -582,26 +572,26 @@ res_write_java(struct SResource *res,UErrorCode *status) {
if (res != NULL) {
switch (res->fType) {
case URES_STRING:
- string_write_java (res, status);
+ string_write_java (static_cast<const StringResource *>(res), status);
return;
case URES_ALIAS:
printf("Encountered unsupported resource type %d of alias\n", res->fType);
*status = U_UNSUPPORTED_ERROR;
return;
case URES_INT_VECTOR:
- intvector_write_java (res, status);
+ intvector_write_java (static_cast<const IntVectorResource *>(res), status);
return;
case URES_BINARY:
- bytes_write_java (res, status);
+ bytes_write_java (static_cast<const BinaryResource *>(res), status);
return;
case URES_INT:
- int_write_java (res, status);
+ int_write_java (static_cast<const IntResource *>(res), status);
return;
case URES_ARRAY:
- array_write_java (res, status);
+ array_write_java (static_cast<const ArrayResource *>(res), status);
return;
case URES_TABLE:
- table_write_java (res, status);
+ table_write_java (static_cast<const TableResource *>(res), status);
return;
default:
break;
« no previous file with comments | « source/tools/genrb/wrtjava.c ('k') | source/tools/genrb/wrtxml.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698