OLD | NEW |
1 \documentclass{article} | 1 \documentclass{article} |
2 \usepackage{epsfig} | 2 \usepackage{epsfig} |
3 \usepackage{color} | 3 \usepackage{color} |
4 \usepackage{dart} | 4 \usepackage{dart} |
5 \usepackage{bnf} | 5 \usepackage{bnf} |
6 \usepackage{hyperref} | 6 \usepackage{hyperref} |
7 \usepackage{lmodern} | 7 \usepackage{lmodern} |
8 \usepackage[T1]{fontenc} | 8 \usepackage[T1]{fontenc} |
9 \newcommand{\code}[1]{{\sf #1}} | 9 \newcommand{\code}[1]{{\sf #1}} |
10 \title{Dart Programming Language Specification \\ | 10 \title{Dart Programming Language Specification \\ |
(...skipping 3483 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3494 \LMHash{} | 3494 \LMHash{} |
3495 First, the argument list $(a_1, \ldots , a_n, x_{n+1}: a_{n+1}, \ldots , x_{n+k}
: a_{n+k})$ is evaluated. | 3495 First, the argument list $(a_1, \ldots , a_n, x_{n+1}: a_{n+1}, \ldots , x_{n+k}
: a_{n+k})$ is evaluated. |
3496 | 3496 |
3497 \LMHash{} | 3497 \LMHash{} |
3498 If $T$ is a deferred type with prefix $p$, then if $p$ has not been successfully
loaded, a dynamic error occurs. | 3498 If $T$ is a deferred type with prefix $p$, then if $p$ has not been successfully
loaded, a dynamic error occurs. |
3499 | 3499 |
3500 \LMHash{} | 3500 \LMHash{} |
3501 Then, if $q$ is a non-factory constructor of an abstract class then an \code{Abs
tractClassInstantiationError} is thrown. | 3501 Then, if $q$ is a non-factory constructor of an abstract class then an \code{Abs
tractClassInstantiationError} is thrown. |
3502 | 3502 |
3503 \LMHash{} | 3503 \LMHash{} |
3504 If $T$ is malformed or if $T$ is a type variable a dynamic error occurs. In che
cked mode, if $T$ or any of its superclasses is malbounded a dynamic error occur
s. | 3504 If $T$ is malformed or if $T$ is a type variable a dynamic error occurs. |
3505 Otherwise, if $q$ is not defined or not accessible, a \code{NoSuchMethodError} i
s thrown. If $q$ has fewer than $n$ positional parameters or more than $n$ requ
ired parameters, or if $q$ lacks any of the keyword parameters $\{ x_{n+1}, \ldo
ts, x_{n+k}\}$ a \code{NoSuchMethodError} is thrown. | 3505 In checked mode, if $T$ or any of its superclasses is malbounded a dynamic error
occurs. |
| 3506 Otherwise, if $q$ is not defined or not accessible, a \code{NoSuchMethodError} i
s thrown. |
| 3507 If $q$ has fewer than $n$ positional parameters or more than $n$ required parame
ters, |
| 3508 or if $q$ lacks any of the named parameters $\{ x_{n+1}, \ldots, x_{n+k}\}$ a \c
ode{NoSuchMethodError} is thrown. |
3506 | 3509 |
3507 \LMHash{} | 3510 \LMHash{} |
3508 Otherwise, if $q$ is a generative constructor (\ref{generativeConstructors}), th
en: | 3511 Otherwise, if $q$ is a generative constructor (\ref{generativeConstructors}), th
en: |
3509 | 3512 |
3510 \commentary{Note that at this point we are assured that the number of actual typ
e arguments match the number of formal type parameters.} | 3513 \commentary{Note that at this point we are assured that the number of actual typ
e arguments match the number of formal type parameters.} |
3511 | 3514 |
3512 \LMHash{} | 3515 \LMHash{} |
3513 A fresh instance (\ref{generativeConstructors}), $i$, of class $R$ is allocated. | 3516 A fresh instance (\ref{generativeConstructors}), $i$, of class $R$ is allocated. |
3514 Then $q$ is executed to initialize $i$ with respect to the bindings that resulte
d from the evaluation of the argument list, and, if $R$ is a generic class, with
its type parameters bound to $V_1 \ldots V_m$. | 3517 Then $q$ is executed to initialize $i$ with respect to the bindings that resulte
d from the evaluation of the argument list, and, if $R$ is a generic class, with
its type parameters bound to $V_1 \ldots V_m$. |
3515 | 3518 |
(...skipping 4628 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8144 | 8147 |
8145 The invariant that each normative paragraph is associated with a line | 8148 The invariant that each normative paragraph is associated with a line |
8146 containing the text \LMHash{} should be maintained. Extra occurrences | 8149 containing the text \LMHash{} should be maintained. Extra occurrences |
8147 of \LMHash{} can be added if needed, e.g., in order to make | 8150 of \LMHash{} can be added if needed, e.g., in order to make |
8148 individual \item{}s in itemized lists addressable. Each \LM.. command | 8151 individual \item{}s in itemized lists addressable. Each \LM.. command |
8149 must occur on a separate line. \LMHash{} must occur immediately | 8152 must occur on a separate line. \LMHash{} must occur immediately |
8150 before the associated paragraph, and \LMLabel must occur immediately | 8153 before the associated paragraph, and \LMLabel must occur immediately |
8151 after the associated \section{}, \subsection{} etc. | 8154 after the associated \section{}, \subsection{} etc. |
8152 | 8155 |
8153 ---------------------------------------------------------------------- | 8156 ---------------------------------------------------------------------- |
OLD | NEW |