]>
Commit | Line | Data |
---|---|---|
b4c522fa IB |
1 | /* REQUIRED_ARGS: |
2 | * PERMUTE_ARGS: | |
3 | */ | |
4 | ||
5 | // https://issues.dlang.org/show_bug.cgi?id=17686 | |
6 | ||
7 | interface INode | |
8 | { | |
9 | @property INode parentNode(); | |
10 | @property IDocument ownerDocument(); | |
11 | } | |
12 | interface IDocument: INode {} | |
13 | interface IEntityReference: INode {} | |
14 | ||
15 | class DOMImplementation(T) | |
16 | { | |
17 | abstract class Node: INode | |
18 | { | |
19 | override | |
20 | { | |
21 | @property Node parentNode() { return null; } | |
22 | @property Document ownerDocument() { return null; } | |
23 | } | |
24 | ||
25 | @property bool readonly() { return true; } | |
26 | } | |
27 | abstract class NodeWithChildren: Node {} | |
28 | ||
29 | class Document: NodeWithChildren, IDocument {} | |
30 | ||
31 | class EntityReference: NodeWithChildren, IEntityReference | |
32 | { | |
33 | override | |
34 | { | |
35 | @property bool readonly() { return true; } | |
36 | } | |
37 | } | |
38 | ||
39 | } | |
40 | ||
41 | void main() | |
42 | { | |
43 | alias aaa = DOMImplementation!string; | |
44 | } | |
45 |