/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You 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.
 */

/* $Id$ */

package org.apache.fop.complexscripts.bidi;


Constants used for bidirectional processing.

This work was originally authored by Glenn Adams (gadams@apache.org).

/** * <p>Constants used for bidirectional processing.</p> * * <p>This work was originally authored by Glenn Adams (gadams@apache.org).</p> */
public interface BidiConstants { // bidi character class
first external (official) category
/** first external (official) category */
int FIRST = 1; // strong category
left-to-right class
/** left-to-right class */
int L = 1;
left-to-right embedding class
/** left-to-right embedding class */
int LRE = 2;
left-to-right override class
/** left-to-right override class */
int LRO = 3;
right-to-left class
/** right-to-left class */
int R = 4;
right-to-left arabic class
/** right-to-left arabic class */
int AL = 5;
right-to-left embedding class
/** right-to-left embedding class */
int RLE = 6;
right-to-left override class
/** right-to-left override class */
int RLO = 7; // weak category
pop directional formatting class
/** pop directional formatting class */
int PDF = 8;
european number class
/** european number class */
int EN = 9;
european number separator class
/** european number separator class */
int ES = 10;
european number terminator class
/** european number terminator class */
int ET = 11;
arabic number class
/** arabic number class */
int AN = 12;
common number separator class
/** common number separator class */
int CS = 13;
non-spacing mark class
/** non-spacing mark class */
int NSM = 14;
boundary neutral class
/** boundary neutral class */
int BN = 15; // neutral category
paragraph separator class
/** paragraph separator class */
int B = 16;
segment separator class
/** segment separator class */
int S = 17;
whitespace class
/** whitespace class */
int WS = 18;
other neutrals class
/** other neutrals class */
int ON = 19;
last external (official) category
/** last external (official) category */
int LAST = 19; // implementation specific categories
placeholder for low surrogate
/** placeholder for low surrogate */
int SURROGATE = 20; // other constants
last /** maximum bidirectional levels
/** last /** maximum bidirectional levels */
int MAX_LEVELS = 61;
override flag
/** override flag */
int OVERRIDE = 128; }