Skip to content

Commit

Permalink
Showing 4 changed files with 7 additions and 5 deletions.
2 changes: 2 additions & 0 deletions scripts/UnicodePropertiesTemplate.java
Original file line number Diff line number Diff line change
@@ -25,4 +25,6 @@ public class UnicodeProperties {
static final CodeRangeEntry[]CodeRangeTable = new CodeRangeEntry[] {
%{extcrs}
};

static final int MAX_WORD_LENGTH = %{max_length};
}
3 changes: 2 additions & 1 deletion scripts/generate.rb
Original file line number Diff line number Diff line change
@@ -180,9 +180,10 @@ def generate_coderange_list
name = "#{$1}=#{$2}" if name =~ /(graphemeclusterbreak)(.*)/i
([name] + aliases[name].to_a).map{|n|[n, range]}
end.flatten(1)
max_length = out.max_by{|name, table|name.length}.first.length.to_s

open("#{SRC_DIR}/unicode/UnicodeProperties.java", "wb") do |f| f <<
open("UnicodePropertiesTemplate.java", "rb").read.sub(/%\{extcrs\}/, out.map{|name, table| "#{INDENT * 2}" + "new CodeRangeEntry(\"#{name}\", \"CR_#{table}\")"}.join(",\n"))
open("UnicodePropertiesTemplate.java", "rb").read.sub(/%\{max_length\}/, max_length).sub(/%\{extcrs\}/, out.map{|name, table| "#{INDENT * 2}" + "new CodeRangeEntry(\"#{name}\", \"CR_#{table}\")"}.join(",\n"))
end
end

5 changes: 1 addition & 4 deletions src/org/jcodings/unicode/UnicodeEncoding.java
Original file line number Diff line number Diff line change
@@ -38,11 +38,8 @@
import org.jcodings.util.IntArrayHash;
import org.jcodings.util.IntHash;


public abstract class UnicodeEncoding extends MultiByteEncoding {

private static final int MAX_WORD_LENGTH = Config.USE_UNICODE_PROPERTIES ? 44 : 6;
private static final int PROPERTY_NAME_MAX_SIZE = MAX_WORD_LENGTH + 1;
private static final int PROPERTY_NAME_MAX_SIZE = UnicodeProperties.MAX_WORD_LENGTH + 1;
static final int I_WITH_DOT_ABOVE = 0x0130;
static final int DOTLESS_i = 0x0131;
static final int DOT_ABOVE = 0x0307;
2 changes: 2 additions & 0 deletions src/org/jcodings/unicode/UnicodeProperties.java
Original file line number Diff line number Diff line change
@@ -819,4 +819,6 @@ public class UnicodeProperties {
new CodeRangeEntry("insupplementaryprivateuseareab", "CR_In_Supplementary_Private_Use_Area_B"),
new CodeRangeEntry("innoblock", "CR_In_No_Block")
};

static final int MAX_WORD_LENGTH = 44;
}

0 comments on commit 2ea6140

Please sign in to comment.