本文整理汇总了Java中com.google.javascript.jscomp.DataFlowAnalysis.MaxIterationsExceededException类的典型用法代码示例。如果您正苦于以下问题:Java MaxIterationsExceededException类的具体用法?Java MaxIterationsExceededException怎么用?Java MaxIterationsExceededException使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
MaxIterationsExceededException类属于com.google.javascript.jscomp.DataFlowAnalysis包,在下文中一共展示了MaxIterationsExceededException类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: testMaxIterationsExceededException
import com.google.javascript.jscomp.DataFlowAnalysis.MaxIterationsExceededException; //导入依赖的package包/类
public void testMaxIterationsExceededException() {
final int MAX_STEP = 10;
Variable a = new Variable("a");
Instruction inst1 = new ArithmeticInstruction(a, a, Operation.ADD, a);
ControlFlowGraph<Instruction> cfg =
new ControlFlowGraph<Instruction>(inst1) {
@Override
public Comparator<DiGraphNode<Instruction, Branch>>
getOptionalNodeComparator(boolean isForward) {
return new Comparator<DiGraphNode<Instruction, Branch>>() {
@Override
public int compare(DiGraphNode<Instruction, Branch> o1,
DiGraphNode<Instruction, Branch> o2) {
return o1.getValue().order - o2.getValue().order;
}
};
}
};
cfg.createNode(inst1);
// We have MAX_STEP + 1 nodes, it is impossible to finish the analysis with
// MAX_STEP number of steps.
for (int i = 0; i < MAX_STEP + 1; i++) {
Instruction inst2 = new ArithmeticInstruction(a, a, Operation.ADD, a);
cfg.createNode(inst2);
inst2.order = i + 1;
cfg.connect(inst1, ControlFlowGraph.Branch.UNCOND, inst2);
inst1 = inst2;
}
DummyConstPropagation constProp = new DummyConstPropagation(cfg);
try {
constProp.analyze(MAX_STEP);
fail("Expected MaxIterationsExceededException to be thrown.");
} catch (MaxIterationsExceededException e) {
assertEquals(e.getMessage(), "Analysis did not terminate after "
+ MAX_STEP + " iterations");
}
}
开发者ID:andyjko,项目名称:feedlack,代码行数:39,代码来源:DataFlowAnalysisTest.java
示例2: testMaxIterationsExceededException
import com.google.javascript.jscomp.DataFlowAnalysis.MaxIterationsExceededException; //导入依赖的package包/类
public void testMaxIterationsExceededException() {
final int MAX_STEP = 10;
Variable a = new Variable("a");
Instruction inst1 = new ArithmeticInstruction(a, a, Operation.ADD, a);
ControlFlowGraph<Instruction> cfg =
new ControlFlowGraph<Instruction>(inst1, true, true) {
@Override
public Comparator<DiGraphNode<Instruction, Branch>>
getOptionalNodeComparator(boolean isForward) {
return new Comparator<DiGraphNode<Instruction, Branch>>() {
@Override
public int compare(DiGraphNode<Instruction, Branch> o1,
DiGraphNode<Instruction, Branch> o2) {
return o1.getValue().order - o2.getValue().order;
}
};
}
};
cfg.createNode(inst1);
// We have MAX_STEP + 1 nodes, it is impossible to finish the analysis with
// MAX_STEP number of steps.
for (int i = 0; i < MAX_STEP + 1; i++) {
Instruction inst2 = new ArithmeticInstruction(a, a, Operation.ADD, a);
cfg.createNode(inst2);
inst2.order = i + 1;
cfg.connect(inst1, ControlFlowGraph.Branch.UNCOND, inst2);
inst1 = inst2;
}
DummyConstPropagation constProp = new DummyConstPropagation(cfg);
try {
constProp.analyze(MAX_STEP);
fail("Expected MaxIterationsExceededException to be thrown.");
} catch (MaxIterationsExceededException e) {
assertEquals(e.getMessage(), "Analysis did not terminate after "
+ MAX_STEP + " iterations");
}
}
开发者ID:SpoonLabs,项目名称:astor,代码行数:39,代码来源:DataFlowAnalysisTest.java
示例3: testMaxIterationsExceededException
import com.google.javascript.jscomp.DataFlowAnalysis.MaxIterationsExceededException; //导入依赖的package包/类
public void testMaxIterationsExceededException() {
Variable a = new Variable("a");
Instruction inst1 = new ArithmeticInstruction(a, a, Operation.ADD, a);
ControlFlowGraph<Instruction> cfg =
new ControlFlowGraph<Instruction>(inst1, true, true) {
@Override
public Comparator<DiGraphNode<Instruction, Branch>> getOptionalNodeComparator(
boolean isForward) {
return comparingInt(arg -> arg.getValue().order);
}
};
cfg.createNode(inst1);
// We have MAX_STEP + 1 nodes, it is impossible to finish the analysis with
// MAX_STEP number of steps.
for (int i = 0; i < MAX_STEP + 1; i++) {
Instruction inst2 = new ArithmeticInstruction(a, a, Operation.ADD, a);
inst2.order = i + 1;
cfg.createNode(inst2);
cfg.connect(inst1, ControlFlowGraph.Branch.UNCOND, inst2);
inst1 = inst2;
}
DummyConstPropagation constProp = new DummyConstPropagation(cfg);
try {
constProp.analyze(MAX_STEP);
fail("Expected MaxIterationsExceededException to be thrown.");
} catch (MaxIterationsExceededException e) {
assertThat(e)
.hasMessageThat()
.isEqualTo("Analysis did not terminate after " + MAX_STEP + " iterations");
}
}
开发者ID:google,项目名称:closure-compiler,代码行数:33,代码来源:DataFlowAnalysisTest.java
注:本文中的com.google.javascript.jscomp.DataFlowAnalysis.MaxIterationsExceededException类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论