mirror of
https://gitlab.kit.edu/uskyk/typicalc.git
synced 2024-11-08 18:30:42 +00:00
Misc. adjustments
Properties file was encoded using latin1 again! The JaCoCo agent should not execute when running the server, use mvn jacoco:prepare-agent test jacoco:report when generating test coverage.
This commit is contained in:
parent
d4e9d3b566
commit
22705727cb
8
.vscode/extensions.json
vendored
8
.vscode/extensions.json
vendored
@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"recommendations": [
|
|
||||||
"runem.lit-plugin",
|
|
||||||
"vscjava.vscode-java-pack",
|
|
||||||
"pivotal.vscode-spring-boot",
|
|
||||||
],
|
|
||||||
"unwantedRecommendations": []
|
|
||||||
}
|
|
15
pom.xml
15
pom.xml
@ -206,21 +206,6 @@
|
|||||||
<groupId>org.jacoco</groupId>
|
<groupId>org.jacoco</groupId>
|
||||||
<artifactId>jacoco-maven-plugin</artifactId>
|
<artifactId>jacoco-maven-plugin</artifactId>
|
||||||
<version>0.8.6</version>
|
<version>0.8.6</version>
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<goals>
|
|
||||||
<goal>prepare-agent</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
<!-- attached to Maven test phase -->
|
|
||||||
<execution>
|
|
||||||
<id>report</id>
|
|
||||||
<phase>test</phase>
|
|
||||||
<goals>
|
|
||||||
<goal>report</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
</plugin>
|
</plugin>
|
||||||
|
|
||||||
<plugin>
|
<plugin>
|
||||||
|
@ -10,7 +10,7 @@ import java.util.List;
|
|||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Utility class to avoid unification logic duplication in type methods.
|
* Utility class to avoid unification logic duplication in type methods (constrainEqualTo*).
|
||||||
*
|
*
|
||||||
* @see Type
|
* @see Type
|
||||||
*/
|
*/
|
||||||
@ -50,7 +50,7 @@ final class UnificationUtil {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static Result<UnificationActions, UnificationError> namedNamed(NamedType a, NamedType b) {
|
static Result<UnificationActions, UnificationError> namedNamed(NamedType a, NamedType b) {
|
||||||
if (a != b) {
|
if (!a.equals(b)) {
|
||||||
return new Result<>(null, UnificationError.DIFFERENT_TYPES);
|
return new Result<>(null, UnificationError.DIFFERENT_TYPES);
|
||||||
} else {
|
} else {
|
||||||
return new Result<>(new UnificationActions());
|
return new Result<>(new UnificationActions());
|
||||||
|
@ -9,7 +9,7 @@ public final class LatexCreatorConstants {
|
|||||||
protected static final String IN = "in";
|
protected static final String IN = "in";
|
||||||
protected static final String CONSTRAINT_SET = "C";
|
protected static final String CONSTRAINT_SET = "C";
|
||||||
|
|
||||||
protected static final String NEW_LINE = System.lineSeparator();
|
protected static final String NEW_LINE = "\n";
|
||||||
protected static final String SPACE = " ";
|
protected static final String SPACE = " ";
|
||||||
protected static final String DOLLAR_SIGN = "$";
|
protected static final String DOLLAR_SIGN = "$";
|
||||||
protected static final String EQUALS = "=";
|
protected static final String EQUALS = "=";
|
||||||
|
@ -57,7 +57,6 @@ public class InputBar extends HorizontalLayout implements LocaleChangeObserver {
|
|||||||
inputField.setId(INPUT_FIELD_ID);
|
inputField.setId(INPUT_FIELD_ID);
|
||||||
inputField.setClearButtonVisible(true);
|
inputField.setClearButtonVisible(true);
|
||||||
inputField.setMaxLength(1000); // TODO: perhaps remove the error message? more than 1000 can't be entered now
|
inputField.setMaxLength(1000); // TODO: perhaps remove the error message? more than 1000 can't be entered now
|
||||||
inputField.setValueChangeMode(ValueChangeMode.EAGER); // TODO: this causes a lot of network traffic
|
|
||||||
// attach a listener that replaces \ with λ
|
// attach a listener that replaces \ with λ
|
||||||
// JavaScript is used because Vaadin does not have APIs for selectionStart/selectionEnd
|
// JavaScript is used because Vaadin does not have APIs for selectionStart/selectionEnd
|
||||||
// and this will be much faster than a bunch of network round trips per character entered!
|
// and this will be much faster than a bunch of network round trips per character entered!
|
||||||
@ -95,8 +94,7 @@ public class InputBar extends HorizontalLayout implements LocaleChangeObserver {
|
|||||||
*/
|
*/
|
||||||
protected void inferTerm(String term) {
|
protected void inferTerm(String term) {
|
||||||
inputField.setValue(term);
|
inputField.setValue(term);
|
||||||
UI.getCurrent().getPage().executeJs(
|
UI.getCurrent().getPage().executeJs("document.getElementById($0).click()", INFER_BUTTON_ID);
|
||||||
String.format("document.getElementById('%s').click()", INFER_BUTTON_ID));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void onTypeInferButtonClick(Consumer<Pair<String, Map<String, String>>> callback) {
|
private void onTypeInferButtonClick(Consumer<Pair<String, Map<String, String>>> callback) {
|
||||||
|
@ -17,35 +17,34 @@ import com.vaadin.flow.i18n.LocaleChangeObserver;
|
|||||||
public class TypeAssumptionField extends HorizontalLayout implements LocaleChangeObserver {
|
public class TypeAssumptionField extends HorizontalLayout implements LocaleChangeObserver {
|
||||||
|
|
||||||
private static final long serialVersionUID = -81579298585584658L;
|
private static final long serialVersionUID = -81579298585584658L;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* IDs for the imported .css-file
|
* IDs for the imported .css-file
|
||||||
*/
|
*/
|
||||||
private static final String MINUS_ICON_ID = "minusIcon";
|
private static final String MINUS_ICON_ID = "minusIcon";
|
||||||
private static final String ASS_DELETE_BUTTON_ID = "assDeleteButton";
|
private static final String ASS_DELETE_BUTTON_ID = "assDeleteButton";
|
||||||
private static final String ASSUMPTIONS_FIELD_ID = "typeAssumptionField";
|
private static final String ASSUMPTIONS_FIELD_ID = "typeAssumptionField";
|
||||||
|
|
||||||
private final Button deleteButton;
|
|
||||||
private final TextField variableInputField;
|
private final TextField variableInputField;
|
||||||
private final TextField typeInputField;
|
private final TextField typeInputField;
|
||||||
|
|
||||||
protected TypeAssumptionField(final Consumer<TypeAssumptionField> deleteSelf) {
|
protected TypeAssumptionField(Consumer<TypeAssumptionField> deleteSelf) {
|
||||||
variableInputField = new TextField();
|
variableInputField = new TextField();
|
||||||
variableInputField.setLabel(getTranslation("root.variable"));
|
variableInputField.setLabel(getTranslation("root.variable"));
|
||||||
typeInputField = new TextField();
|
typeInputField = new TextField();
|
||||||
typeInputField.setLabel(getTranslation("root.type"));
|
typeInputField.setLabel(getTranslation("root.type"));
|
||||||
Icon minusIcon = new Icon(VaadinIcon.MINUS_CIRCLE);
|
Icon minusIcon = new Icon(VaadinIcon.MINUS_CIRCLE);
|
||||||
minusIcon.setId(MINUS_ICON_ID);
|
minusIcon.setId(MINUS_ICON_ID);
|
||||||
deleteButton = new Button(minusIcon, event -> deleteSelf.accept(this));
|
Button deleteButton = new Button(minusIcon, event -> deleteSelf.accept(this));
|
||||||
deleteButton.setId(ASS_DELETE_BUTTON_ID);
|
deleteButton.setId(ASS_DELETE_BUTTON_ID);
|
||||||
add(variableInputField, typeInputField, deleteButton);
|
add(variableInputField, typeInputField, deleteButton);
|
||||||
setId(ASSUMPTIONS_FIELD_ID);
|
setId(ASSUMPTIONS_FIELD_ID);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected String getVariable() {
|
protected String getVariable() {
|
||||||
return variableInputField.getOptionalValue().orElse(StringUtils.EMPTY);
|
return variableInputField.getOptionalValue().orElse(StringUtils.EMPTY);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected String getType() {
|
protected String getType() {
|
||||||
return typeInputField.getOptionalValue().orElse(StringUtils.EMPTY);
|
return typeInputField.getOptionalValue().orElse(StringUtils.EMPTY);
|
||||||
}
|
}
|
||||||
@ -55,5 +54,5 @@ public class TypeAssumptionField extends HorizontalLayout implements LocaleChang
|
|||||||
variableInputField.setLabel(getTranslation("root.variable"));
|
variableInputField.setLabel(getTranslation("root.variable"));
|
||||||
typeInputField.setLabel(getTranslation("root.type"));
|
typeInputField.setLabel(getTranslation("root.type"));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
root.domain=http://localhost:8080/
|
root.domain=http://localhost:8080/
|
||||||
root.lambda=\u03BB
|
root.lambda=\u03BB
|
||||||
root.home=home
|
|
||||||
root.typicalc=Typicalc
|
root.typicalc=Typicalc
|
||||||
root.examplebutton=\uD83D\uDCC2
|
root.examplebutton=\uD83D\uDCC2
|
||||||
root.termGrammar=\u2329Term\u232A ::= \u2329App\u232A | \u2329Abs\u232A | (\u2329Term\u232A) | \
|
root.termGrammar=\u2329Term\u232A ::= \u2329App\u232A | \u2329Abs\u232A | (\u2329Term\u232A) | \
|
||||||
|
@ -19,8 +19,8 @@ root.selectLanguage=Sprache
|
|||||||
root.termExplanation=Die folgende Grammatik beschreibt den Aufbau eines gültigen Terms:
|
root.termExplanation=Die folgende Grammatik beschreibt den Aufbau eines gültigen Terms:
|
||||||
root.assExplanation=Die folgende Grammatik beschreibt die Syntax eines gültigen Typs:
|
root.assExplanation=Die folgende Grammatik beschreibt die Syntax eines gültigen Typs:
|
||||||
root.typeAssumptions=Typannahmen
|
root.typeAssumptions=Typannahmen
|
||||||
root.addAssumption=Typannahme hinzufügen
|
root.addAssumption=Typannahme hinzufügen
|
||||||
root.deleteAll=Alle löschen
|
root.deleteAll=Alle löschen
|
||||||
root.variable=Variable
|
root.variable=Variable
|
||||||
root.type=Typ
|
root.type=Typ
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user