Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(44)

Unified Diff: sky/specs/script.md

Issue 1142853006: [Specs] Remove all the obsolete specs. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « sky/specs/runloop.md ('k') | sky/specs/style.md » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sky/specs/script.md
diff --git a/sky/specs/script.md b/sky/specs/script.md
deleted file mode 100644
index 4004283159ed787187667169ebb5eb24d20e19f2..0000000000000000000000000000000000000000
--- a/sky/specs/script.md
+++ /dev/null
@@ -1,101 +0,0 @@
-Sky Script Language
-===================
-
-The Sky script language is Dart.
-
-The way that Sky integrates the module system with its script language
-is described in [modules.md](modules.md).
-
-All the APIs defined in this documentation, unless explicitly called
-out as being in a framework, are in the `dart:sky` built-in module.
-
-When a method in `dart:sky` defined as ``external`` receives an
-argument, it must type-check it, and, if the argument's value is the
-wrong type, then it must throw an ArgumentError as follows:
-
- throw new ArgumentError(value, name: name);
-
-...where "name" is the name of the argument. Type checking here
-includes rejecting nulls unless otherwise indicated or unless null is
-argument's default value.
-
-The following definitions are exposed in ``dart:sky``:
-
-```dart
-import 'dart:mirrors';
-
-abstract class AutomaticMetadata {
- const AutomaticMetadata();
- void init(DeclarationMirror target, Module module, ScriptElement script);
-
- static void runLibrary(LibraryMirror library, Module module, ScriptElement script) {
- library.declarations.values.toList() /* ..sort((DeclarationMirror a, DeclarationMirror b) {
- bool aHasLocation;
- try {
- aHasLocation = a.location != null;
- } catch(e) {
- aHasLocation = false;
- }
- bool bHasLocation;
- try {
- bHasLocation = b.location != null;
- } catch(e) {
- bHasLocation = false;
- }
- if (!aHasLocation)
- return bHasLocation ? 1 : 0;
- if (!bHasLocation)
- return -1;
- if (a.location.sourceUri != b.location.sourceUri)
- return a.location.sourceUri.toString().compareTo(b.location.sourceUri.toString());
- if (a.location.line != b.location.line)
- return a.location.line - b.location.line;
- return a.location.column - b.location.column;
- }) */
- ..forEach((DeclarationMirror d) {
- d.metadata.forEach((InstanceMirror i) {
- if (i.reflectee is AutomaticMetadata)
- i.reflectee.run(d, module, script);
- });
- });
- }
-}
-
-class AutomaticFunction extends AutomaticMetadata {
- const AutomaticFunction();
- void init(DeclarationMirror target, Module module, ScriptElement script) {
- assert(target is MethodMirror);
- MethodMirror f = target as MethodMirror;
- assert(!f.isAbstract);
- assert(f.isRegularMethod);
- assert(f.isTopLevel);
- assert(f.isStatic);
- assert(f.parameters.length == 1);
- assert(f.parameters[0].type == ScriptElement);
- assert(f.returnType == currentMirrorSystem().voidType);
- (f.owner as LibraryMirror).invoke(f.simpleName, [script]);
- }
-}
-const autorun = const AutomaticFunction();
-```
-
-Extensions
-----------
-
-The following as-yet unimplemented features of the Dart language are
-assumed to exist:
-
-* It is assumed that a subclass can define a constructor by reference
- to a superclass' constructor, wherein the subclass' constructor has
- the same arguments as the superclass' constructor and does nothing
- but invoke that superclass' constructor with the same arguments. The
- syntax for defining this is, within the class body for a class
- called ClassName:
-
-```dart
- ClassName = SuperclassName;
- ClassName.namedConstructor = SuperclassName.otherNamedConstructor;
-```
-
-* The reflection APIs (`dart:mirrors`) are assumed to reflect a
- library's declarations in source order.
« no previous file with comments | « sky/specs/runloop.md ('k') | sky/specs/style.md » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698