/[suikacvs]/markup/html/whatpm/t/webidl/webidl-interface.dat
Suika

Contents of /markup/html/whatpm/t/webidl/webidl-interface.dat

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (hide annotations) (download)
Sat Aug 2 15:14:24 2008 UTC (16 years, 11 months ago) by wakaba
Branch: MAIN
Changes since 1.2: +135 -0 lines
++ whatpm/t/ChangeLog	2 Aug 2008 15:13:47 -0000
	* WebIDL.t ($onerror): |value| argument value should be
	checked as well as other argument values.

2008-08-02  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/t/webidl/ChangeLog	2 Aug 2008 15:14:12 -0000
	* webidl-defs.dat: Test result updated.

	* webidl-interface.dat: New test data for constants are added.

2008-08-02  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/Whatpm/ChangeLog	2 Aug 2008 15:12:09 -0000
	* WebIDL.pm ($integer): Order of selections are changed to match
	hexadecimal numbers (the original pattern, taken from the spec,
	was not work for hexadecimal numbers, because the "0" prefix
	matches to the [0-7]* part (as an empty string) and therefore
	it does not match with remaining "x..." part of a "0x..." integer
	literal.
	($get_type): It now returns a string, not an array reference,
	for regular types and |sequence| types (i.e. it in any case
	returns a string).
	($get_next_token): The second item in the array that represents
	a integer or float token is now a Perl number value, not the
	original string representation of the number.
	(check): Support for const value consistency checking.
	No extended attribute is defined for constants.
	(Node subclasses): Use simple strings rather than array references
	for default data type values.
	($serialize_type): Type values are now simple strings.
	(value): If the new attribute value is a false value, then
	a FALSE value is set to the attribute.

2008-08-02  Wakaba  <wakaba@suika.fam.cx>

1 wakaba 1.1 #data
2     interface abc;
3     #errors
4     1;non-module definition;s
5     #document
6     | interface abc;
7    
8     #data
9     interface abc : def;
10     #errors
11     1.20;before interface block;m
12     #document
13    
14     #data
15     interface abc : def;
16     interface xyz;
17     #errors
18     1.20;before interface block;m
19     2;non-module definition;s
20     #document
21     | interface xyz;
22    
23 wakaba 1.2 #data
24     module m {
25     interface x {
26     attribute long a;
27     attribute long b;
28     };};
29     #errors
30     #document
31     | module m {
32     |
33     | interface x {
34     | attribute long a;
35     | attribute long b;
36     | };
37     |
38     | };
39    
40     #data
41     module m {
42     interface x {
43     attribute long a;
44     attribute long a;
45     };};
46     #errors
47     4;duplicate interface member;m
48     #document
49     | module m {
50     |
51     | interface x {
52     | attribute long a;
53     | attribute long a;
54     | };
55     |
56     | };
57    
58     #data
59     module m {
60     interface x {
61     attribute long a;
62     };
63     interface x {
64     attribute long a;
65     };};
66     #errors
67     5;duplicate qname;m
68    
69     #data
70     module m {
71     interface x {
72     attribute long a;
73     attribute long _a;
74     };};
75     #errors
76     4;duplicate interface member;m
77    
78     #data
79     module m {
80     interface x {
81     attribute long a;
82     attribute long __a;
83     };};
84     #errors
85    
86     #data
87     module m {
88     interface x {
89     attribute long a;
90     const long a = 1;
91     };};
92     #errors
93     4;duplicate interface member;m
94    
95     #data
96     module m {
97     interface x {
98     long a ();
99     long a ();
100     };};
101     #errors
102    
103     #data
104     interface x {};
105     interface y : x {};
106     #errors
107     1;non-module definition;s
108     2;non-module definition;s
109    
110     #data
111     interface x;
112     interface y : x {};
113     #errors
114     1;non-module definition;s
115     2;non-module definition;s
116    
117     #data
118     interface x : y {};
119     #errors
120     1;non-module definition;s
121     1;interface not defined;m;y
122    
123     #data
124     module m {
125     interface x {};
126     interface y : x {};
127     };
128     #errors
129    
130     #data
131     module m {
132     interface x {};
133     };
134     module n {
135     interface y : x {};
136     };
137     #errors
138     5;interface not defined;m;x
139    
140     #data
141     module m {
142     interface x : y::DOMString {};
143     };
144     #errors
145     2;interface not defined;m;y::DOMString
146    
147     #data
148     module m {
149     interface _DOMString {};
150     interface x : _DOMString {};
151     };
152     #errors
153    
154     #data
155     module m {
156     interface _DOMString {};
157     interface x : m::_DOMString {};
158     };
159     #errors
160     3;interface not defined;m;m::DOMString
161    
162     #data
163     module m {
164     interface _DOMString {};
165     interface x : m::DOMString {};
166     };
167     #errors
168     3;interface not defined;m;m::DOMString
169    
170     #data
171     module m {
172     interface _DOMString {};
173     interface x : ::m::_DOMString {};
174     };
175     #errors
176     3;interface not defined;m;::m::DOMString
177    
178     #data
179     interface x {}; // defines x1
180     module m {
181     interface y : x {}; // inherits x1
182     interface x : x {}; // defines x2, which inherits x1
183     interface z : x {}; // inherits x2
184     };
185     #errors
186     1;non-module definition;s
187    
188     #data
189     module m {
190     interface x : x {};
191     };
192     #errors
193     2;interface not defined;m;x
194    
195     #data
196     module m {
197     interface y : x {};
198     interface x {};
199     };
200     #errors
201     2;interface not defined;m;x
202    
203     #data
204     module m {
205     interface x {};
206     interface y {};
207     interface z : x, y {};
208     };
209     #errors
210    
211     #data
212     module m {
213     interface x : ::x {};
214     };
215     #errors
216     2;interface not defined;m;::x
217    
218     #data
219     module m {
220     interface x {};
221     };
222     module n {
223     interface y : m::x {};
224     };
225     #errors
226    
227     #data
228     module m {
229     interface x {};
230     module n {
231     interface y : x {};
232     };
233     };
234     #errors
235     4;interface not defined;m;x
236    
237     #data
238     module m {
239     module n {
240     interface x {};
241     };
242     };
243     module l {
244     interface y : m::n::x {};
245     };
246     #errors
247    
248     #data
249     module m {
250     module n {};
251     interface x : n {};
252     };
253     #errors
254     3;interface not defined;m;n
255    
256     #data
257     module m {
258     exception x {};
259     interface y : x {};
260     };
261     #errors
262     3;interface not defined;m;x
263    
264     #data
265     module m {
266     interface x;
267     interface y : x {};
268     };
269     #errors
270 wakaba 1.3
271     #data
272     module m {
273     interface i {
274     const long t = 234;
275     };
276     };
277     #errors
278    
279     #data
280     module m {
281     interface i {
282     const boolean t = 234;
283     };
284     };
285     #errors
286     3:234;const type mismatch;m;boolean
287    
288     #data
289     module m {
290     interface i {
291     const unsigned long t = -02;
292     };
293     };
294     #errors
295     3:-2;const value out of range;m
296    
297     #data
298     module m {
299     interface i {
300     const any t = 234;
301     };
302     };
303     #errors
304    
305     #data
306     module m {
307     interface i {
308     const long t = 234.4;
309     };
310     };
311     #errors
312     3:234.4;const type mismatch;m;long
313    
314     #data
315     module m {
316     interface i {
317     const long t =TRUE;
318     };
319     };
320     #errors
321     3:TRUE;const type mismatch;m;long
322    
323     #data
324     module m {
325     interface i {
326     const DOMString t = 234;
327     };
328     };
329     #errors
330     3:234;const type mismatch;m;DOMString
331    
332     #data
333     module m {
334     const octet LF = 0x0A;
335     };
336     #errors
337     #document
338     | module m {
339     |
340     | const octet LF = 10;
341     |
342     | };
343    
344     #data
345     module m {
346     const octet LF = 0X0a;
347     };
348     #errors
349     #document
350     | module m {
351     |
352     | const octet LF = 10;
353     |
354     | };
355    
356     #data
357     module m {
358     const octet LF = 012;
359     };
360     #errors
361     #document
362     | module m {
363     |
364     | const octet LF = 10;
365     |
366     | };
367    
368     #data
369     module m {
370     const octet LF = 10;
371     };
372     #errors
373     #document
374     | module m {
375     |
376     | const octet LF = 10;
377     |
378     | };
379    
380     #data
381     module m {
382     const octet LF = 10.00;
383     };
384     #errors
385     2:10;const type mismatch;m;octet
386     #document
387     | module m {
388     |
389     | const octet LF = 10;
390     |
391     | };
392    
393     #data
394     module m {
395     const octet CR = -0x0D;
396     };
397     #errors
398     2:-13;const value out of range;m
399     #document
400     | module m {
401     |
402     | const octet CR = -13;
403     |
404     | };

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24