| ... |
... |
@@ -55,4 +55,15 @@ |
| 55 |
55 |
|
| 56 |
56 |
= Formatting = |
| 57 |
57 |
|
| 58 |
|
- |
|
58 |
+Xtext supports automatic formatting, which is available in the text editor with right-click → //Format// or ctrl+shift+F. However, the formatter must be configured in order to generate good results. Write a formatter configuration that fits well to your syntax by editing the generated file {{code language="none"}}TuringFormatter{{/code}} in the {{code language="none"}}formatting{{/code}} subpackage. Learn how this is done by reading the Xtext reference documentation → Runtime Concepts → Formatting. |
|
59 |
+ |
|
60 |
+= Validation = |
|
61 |
+ |
|
62 |
+The generated code includes some automatic validation of models with respect to syntactic issues. If the token sequence in a text file does not conform to the grammar, error markers are shown at appropriate points in the text. However, this should be augmented by semantic validation by checking high-level properties of the model. Implement such a semantic validation by editing the generated file {{code language="none"}}TuringJavaValidator{{/code}} in the {{code language="none"}}validation{{/code}} subpackage. Learn how this is done by reading the Xtext reference documentation → Runtime Concepts → Validation → Custom Validation. You should implement at least the following checks: |
|
63 |
+ |
|
64 |
+* Is there exactly one initial state? |
|
65 |
+* Are all states reachable through transitions starting from the initial state? |
|
66 |
+ |
|
67 |
+= Parsing = |
|
68 |
+ |
|
69 |
+The generated code includes a parser for text files in your syntax. This parser is simply used with the same interface as for any other EMF models: resource sets. |