ICU-45 new builder for RBBI rules, initial checkin

X-SVN-Rev: 8940
This commit is contained in:
Andy Heninger 2002-06-25 17:50:40 +00:00
parent 32c09250b7
commit 631cd39ece
2 changed files with 112 additions and 18 deletions

View File

@ -89,6 +89,9 @@ Package=<4>
Begin Project Dependency
Project_Dep_Name ustdio
End Project Dependency
Begin Project Dependency
Project_Dep_Name genbrk
End Project Dependency
}}}
###############################################################################
@ -189,24 +192,6 @@ Package=<4>
###############################################################################
Project: "genbrk"=..\tools\genbrk\genbrk.dsp - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
Begin Project Dependency
Project_Dep_Name common
End Project Dependency
Begin Project Dependency
Project_Dep_Name toolutil
End Project Dependency
}}}
###############################################################################
Project: "derb"=..\TOOLS\GENRB\derb.dsp - Package Owner=<4>
Package=<5>
@ -225,6 +210,24 @@ Package=<4>
###############################################################################
Project: "genbrk"=..\tools\genbrk\genbrk.dsp - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
Begin Project Dependency
Project_Dep_Name common
End Project Dependency
Begin Project Dependency
Project_Dep_Name toolutil
End Project Dependency
}}}
###############################################################################
Project: "genccode"=..\tools\genccode\genccode.dsp - Package Owner=<4>
Package=<5>
@ -557,6 +560,9 @@ Package=<4>
Begin Project Dependency
Project_Dep_Name toolutil
End Project Dependency
Begin Project Dependency
Project_Dep_Name genbrk
End Project Dependency
}}}
###############################################################################

View File

@ -0,0 +1,88 @@
/*
**********************************************************************
* Copyright (C) 1999-2000, International Business Machines
* Corporation and others. All Rights Reserved.
**********************************************************************
* Date Name Description
* 03/14/00 aliu Creation.
* 06/27/00 aliu Change from C++ class to C struct
**********************************************************************
*/
#ifndef PARSEERR_H
#define PARSEERR_H
#include "unicode/utypes.h"
/**
* The capacity of the context strings in UParseError.
* @draft ICU 2.0
*/
enum { U_PARSE_CONTEXT_LEN = 16 };
/**
* A UParseError struct is used to returned detailed information about
* parsing errors. It is used by ICU parsing engines that parse long
* rules, patterns, or programs, where the text being parsed is long
* enough that more information than a UErrorCode is needed to
* localize the error.
*
* <p>The code field is an integer error code specific to each parsing
* engine, but globally unique. See the engine header file for
* possible values. The line, offset, and context fields are
* optional; parsing engines may choose not to use to use them.
*
* <p>Examples of engines which use UParseError (or may use it in the
* future) are RuleBasedTransliterator and RuleBasedBreakIterator.
*
* @draft ICU 2.0
*/
typedef struct _UParseError {
/**
* An integer indicating the type of error. If no error was
* encountered, the parse engine sets this to zero, and the
* other fields' values should be ignored.
*
* <p>Each parse engine should use a range of codes from
* 0xNNNN0001 to 0xNNNNFFFF, where NNNN is a 16-bit integer
* between 0x0001 and 0xFFFF unique to each parse engine.
* Parse engines should define the enum PARSE_ERROR_BASE
* to be 0xNNNN0000.
*/
/*int32_t code; */
/**
* The line on which the error occured. If the parse engine
* is not using this field, it should set it to zero. Otherwise
* it should be a positive integer. The default value of this field
* is -1. It will be set to 0 if the code populating this struct is not
* using line numbers.
*/
int32_t line;
/**
* The character offset to the error. If the line field is
* being used, then this offset is from the start of the line.
* If the line field is not being used, then this offset is from
* the start of the text.The default value of this field
* is -1. It will be set to appropriate value by the code that
* populating the struct.
*/
int32_t offset;
/**
* Textual context before the error. Null-terminated.
* May be the empty string if not implemented by parser.
*/
UChar preContext[U_PARSE_CONTEXT_LEN];
/**
* Textual context after the error. Null-terminated.
* May be the empty string if not implemented by parser.
*/
UChar postContext[U_PARSE_CONTEXT_LEN];
} UParseError;
#endif