You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
71 lines
1.6 KiB
71 lines
1.6 KiB
<!doctype html>
|
|
|
|
<title>CodeMirror: Dart mode</title>
|
|
<meta charset="utf-8"/>
|
|
<link rel=stylesheet href="../../doc/docs.css">
|
|
<link rel="stylesheet" href="../../lib/codemirror.css">
|
|
<script src="../../lib/codemirror.js"></script>
|
|
<script src="../clike/clike.js"></script>
|
|
<script src="dart.js"></script>
|
|
<style>.CodeMirror {border: 1px solid #dee;}</style>
|
|
<div id=nav>
|
|
<a href="https://codemirror.net/5"><h1>CodeMirror</h1><img id=logo src="../../doc/logo.png" alt=""></a>
|
|
|
|
<ul>
|
|
<li><a href="../../index.html">Home</a>
|
|
<li><a href="../../doc/manual.html">Manual</a>
|
|
<li><a href="https://github.com/codemirror/codemirror5">Code</a>
|
|
</ul>
|
|
<ul>
|
|
<li><a href="../index.html">Language modes</a>
|
|
<li><a class=active href="#">Dart</a>
|
|
</ul>
|
|
</div>
|
|
|
|
<article>
|
|
<h2>Dart mode</h2>
|
|
<form>
|
|
<textarea id="code" name="code">
|
|
import 'dart:math' show Random;
|
|
|
|
void main() {
|
|
print(Die(n: 12).roll());
|
|
}
|
|
|
|
// Define a class.
|
|
class Die {
|
|
// Define a class variable.
|
|
static final Random shaker = Random();
|
|
|
|
// Define instance variables.
|
|
final int sides;
|
|
int? lastRoll;
|
|
|
|
// Define a constructor.
|
|
Die({int n = 6}) : sides = n {
|
|
if (4 > n || n > 20) {
|
|
// Support for errors and exceptions.
|
|
throw ArgumentError(/* */);
|
|
}
|
|
}
|
|
|
|
// Define a method using shorthand syntax.
|
|
@override
|
|
String toString() => '$lastRoll';
|
|
|
|
// Define an instance method.
|
|
int roll() {
|
|
return lastRoll = shaker.nextInt(sides) + 1;
|
|
}
|
|
}
|
|
</textarea>
|
|
</form>
|
|
|
|
<script>
|
|
var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
|
|
lineNumbers: true,
|
|
mode: "application/dart"
|
|
});
|
|
</script>
|
|
|
|
</article>
|