Class SwitchGenerator
- java.lang.Object
-
- org.mozilla.javascript.tools.idswitch.SwitchGenerator
-
public class SwitchGenerator extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
c_was_defined
(package private) int
char_tail_test_threshold
private int[]
columns
private java.lang.String
default_value
private CodePrinter
P
private IdValuePair[]
pairs
private ToolErrorReporter
R
private java.lang.String
source_file
(package private) int
use_if_threshold
(package private) java.lang.String
v_c
(package private) java.lang.String
v_guess
(package private) java.lang.String
v_id
(package private) java.lang.String
v_label
(package private) java.lang.String
v_length_suffix
(package private) java.lang.String
v_s
(package private) java.lang.String
v_switch_label
-
Constructor Summary
Constructors Constructor Description SwitchGenerator()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static boolean
bigger(IdValuePair a, IdValuePair b, int comparator)
private void
check_all_is_different(int begin, int end)
private int
count_different_chars(int begin, int end, int column)
private int
count_different_lengths(int begin, int end)
private int
find_max_different_column(int begin, int end, int L)
private void
generate_body(int begin, int end, int indent_level)
private void
generate_length_switch(int begin, int end, int indent_level)
private void
generate_letter_switch(int begin, int end, int indent_level, boolean label_was_defined, boolean inside_if)
private boolean
generate_letter_switch_r(int begin, int end, int L, int indent_level, boolean label_was_defined, boolean inside_if)
void
generateSwitch(java.lang.String[] pairs, java.lang.String default_value)
void
generateSwitch(IdValuePair[] pairs, java.lang.String default_value)
CodePrinter
getCodePrinter()
ToolErrorReporter
getReporter()
java.lang.String
getSourceFileName()
private static void
heap4Sort(IdValuePair[] array, int offset, int size, int comparator)
private static void
heapify4(IdValuePair[] array, int offset, int size, int i, int comparator)
private static void
makeHeap4(IdValuePair[] array, int offset, int size, int comparator)
private EvaluatorException
on_same_pair_fail(IdValuePair a, IdValuePair b)
void
setCodePrinter(CodePrinter value)
void
setReporter(ToolErrorReporter value)
void
setSourceFileName(java.lang.String value)
private void
sort_pairs(int begin, int end, int comparator)
-
-
-
Field Detail
-
v_switch_label
java.lang.String v_switch_label
-
v_label
java.lang.String v_label
-
v_s
java.lang.String v_s
-
v_c
java.lang.String v_c
-
v_guess
java.lang.String v_guess
-
v_id
java.lang.String v_id
-
v_length_suffix
java.lang.String v_length_suffix
-
use_if_threshold
int use_if_threshold
-
char_tail_test_threshold
int char_tail_test_threshold
-
pairs
private IdValuePair[] pairs
-
default_value
private java.lang.String default_value
-
columns
private int[] columns
-
c_was_defined
private boolean c_was_defined
-
P
private CodePrinter P
-
R
private ToolErrorReporter R
-
source_file
private java.lang.String source_file
-
-
Method Detail
-
getCodePrinter
public CodePrinter getCodePrinter()
-
setCodePrinter
public void setCodePrinter(CodePrinter value)
-
getReporter
public ToolErrorReporter getReporter()
-
setReporter
public void setReporter(ToolErrorReporter value)
-
getSourceFileName
public java.lang.String getSourceFileName()
-
setSourceFileName
public void setSourceFileName(java.lang.String value)
-
generateSwitch
public void generateSwitch(java.lang.String[] pairs, java.lang.String default_value)
-
generateSwitch
public void generateSwitch(IdValuePair[] pairs, java.lang.String default_value)
-
generate_body
private void generate_body(int begin, int end, int indent_level)
-
generate_length_switch
private void generate_length_switch(int begin, int end, int indent_level)
-
generate_letter_switch
private void generate_letter_switch(int begin, int end, int indent_level, boolean label_was_defined, boolean inside_if)
-
generate_letter_switch_r
private boolean generate_letter_switch_r(int begin, int end, int L, int indent_level, boolean label_was_defined, boolean inside_if)
-
count_different_lengths
private int count_different_lengths(int begin, int end)
-
find_max_different_column
private int find_max_different_column(int begin, int end, int L)
-
count_different_chars
private int count_different_chars(int begin, int end, int column)
-
check_all_is_different
private void check_all_is_different(int begin, int end)
-
on_same_pair_fail
private EvaluatorException on_same_pair_fail(IdValuePair a, IdValuePair b)
-
sort_pairs
private void sort_pairs(int begin, int end, int comparator)
-
bigger
private static boolean bigger(IdValuePair a, IdValuePair b, int comparator)
-
heap4Sort
private static void heap4Sort(IdValuePair[] array, int offset, int size, int comparator)
-
makeHeap4
private static void makeHeap4(IdValuePair[] array, int offset, int size, int comparator)
-
heapify4
private static void heapify4(IdValuePair[] array, int offset, int size, int i, int comparator)
-
-