Package org.apache.abdera.i18n.iri

Source Code of org.apache.abdera.i18n.iri.Constants

/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements.  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.  For additional information regarding
* copyright in this work, please see the NOTICE file in the top level
* directory of this distribution.
*/
package org.apache.abdera.i18n.iri;

import java.util.BitSet;

import org.apache.abdera.i18n.ChainableBitSet;


public class Constants {

  public final static BitSet get(char c) {
    return (new ChainableBitSet()).set2(c);
  }
 
  public final static char[] hex = {
    '0', '1', '2', '3', '4', '5', '6', '7',
    '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };

  public final static BitSet COLON      = new ChainableBitSet().set2(':');
  public final static BitSet QUERYMARK  = new ChainableBitSet().set2('?');
  public final static BitSet HASH       = new ChainableBitSet().set2('#');
  public final static BitSet SLASH      = new ChainableBitSet().set2('/');
  public final static BitSet SEPS       = new ChainableBitSet().set2("/?#");
 
  public final static BitSet DIGIT      = new ChainableBitSet().set2('0','9');
  public final static BitSet ALPHA      = new ChainableBitSet().set2('A', 'Z').set2('a','z');
  public final static BitSet ALPHANUM   = new ChainableBitSet().set2(DIGIT).set2(ALPHA);
  public final static BitSet HEX        = new ChainableBitSet().set2(DIGIT).set2('A','F').set2('a','f');
  public final static BitSet MARK       = new ChainableBitSet().set2("-_.!~*\'()");
  public final static BitSet UNRESERVED = new ChainableBitSet().set2(ALPHANUM).set2(MARK);
  public final static BitSet RESERVED   = new ChainableBitSet().set2(";/?:@&=+$,[]");
  public final static BitSet ESCAPED    = new ChainableBitSet().set2(0);
  public final static BitSet GENDELIMS  = new ChainableBitSet().set2(":/?#[]@");
  public final static BitSet SUBDELIMS  = new ChainableBitSet().set2("!$&\\'()*+,;=");
  public final static BitSet PCHAR      = new ChainableBitSet().set2(UNRESERVED).set2(ESCAPED).set2(":@&=+$,");
  public final static BitSet PATH       = new ChainableBitSet().set2(PCHAR).set2(";/%");
  public final static BitSet PATHNODELIMS = new ChainableBitSet().set2(PATH).addNot2(GENDELIMS);
  public final static BitSet SCHEME     = new ChainableBitSet().set2(ALPHA).set2(DIGIT).set2("+-.");
  public final static BitSet USERINFO   = new ChainableBitSet().set2(UNRESERVED).set2(SUBDELIMS).set2('%').set2(HEX);
  public final static BitSet QUERY      = new ChainableBitSet().set2(PCHAR).set2('/','?');
  public final static BitSet FRAGMENT   = new ChainableBitSet().set2(PCHAR).set2('/','?');
  public final static BitSet PCTENC     = new ChainableBitSet().set2('%').set2(HEX);
 
  //userinfo    = *( unreserved / pct-encoded / sub-delims / ":" )
 
  public final static BitSet BIDI = new ChainableBitSet()
  .set2('\u200E', // Left-to-right mark
        '\u200F', // Right-to-left mark
        '\u202A', // Left-to-right embedding
        '\u202B', // Right-to-left embedding
        '\u202D', // Left-to-right override
        '\u202E', // Right-to-left override
        '\u202C');// Pop directional formatting
 
  public final static BitSet UCSCHAR    = new ChainableBitSet().set2('\u00A0', '\uD7FF')
                                            .set2('\uF900','\uFDCF')
                                            .set2('\uFDF0','\uFFEF')
                                            .set2(0x10000,0x1FFFD)
                                            .set2(0x20000,0x2FFFD)
                                            .set2(0x30000,0x3FFFD)
                                            .set2(0x40000,0x4FFFD)
                                            .set2(0x50000,0x5FFFD)
                                            .set2(0x60000,0x6FFFD)
                                            .set2(0x70000,0x7FFFD)
                                            .set2(0x80000,0x8FFFD)
                                            .set2(0x90000,0x9FFFD)
                                            .set2(0xA0000,0xAFFFD)
                                            .set2(0xB0000,0xBFFFD)
                                            .set2(0xC0000,0xCFFFD)
                                            .set2(0xD0000,0xDFFFD)
                                            .set2(0xE1000,0xEFFFD);
 
  public final static BitSet IPRIVATE   = new ChainableBitSet().set2('\uE000', '\uF8FF')
                                            .set2(0xF0000,0xFFFFD)
                                            .set2(0x100000,0x10FFFD);
 
  public final static BitSet IUNRESERVED= new ChainableBitSet().set2(ALPHANUM)
                                            .set2(MARK)
                                            .set2(UCSCHAR)
                                            .set2(BIDI,false);
 
  public final static BitSet IPCHAR     = new ChainableBitSet().set2(IUNRESERVED)
                                            .set2(ESCAPED)
                                            .set2(":@&=+$,");
 
  public final static BitSet IPATH       = new ChainableBitSet().set2(IPCHAR).set2(";/%");
 
  public final static BitSet IQUERY     = new ChainableBitSet().set2(IPCHAR)
                                            .set2(IPRIVATE)
                                            .set2(";/?%");
 
  public final static BitSet IFRAGMENT  = new ChainableBitSet().set2(IPCHAR).set2("/?%");
 
  public final static BitSet IREGNAME   = new ChainableBitSet().set2(IUNRESERVED)
                                            .set2(ESCAPED)
                                            .set2("!$&'()*+,;=");
  public final static BitSet REGNAME    = new ChainableBitSet().set2(UNRESERVED)
                                            .set2(ESCAPED)
                                            .set2("!$&'()*+,;=");
 
  public final static BitSet IUSERINFO  = new ChainableBitSet().set2(IUNRESERVED)
                                            .set2(ESCAPED)
                                            .set2(";:&=+$,");
 
  public final static BitSet ISERVER    = new ChainableBitSet().set2(IUSERINFO)
                                            .set2(IREGNAME)
                                            .set2(ALPHANUM)
                                            .set2(".:@[]%-")
                                            .set2('?',false);
 
  public final static BitSet STD3ASCIIRULES = new ChainableBitSet()
                                                .set2(0x0000,0x002C)
                                                .set2(0x002E,0x002F)
                                                .set2(0x003A,0x0040)
                                                .set2(0x005B,0x0060)
                                                .set2(0x007B,0x007F);
 
  public final static BitSet ASCIISANSCRLF = new ChainableBitSet()
                                                .set2(1, 127)
                                                .clear2(10,13);

}
TOP

Related Classes of org.apache.abdera.i18n.iri.Constants

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.