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

Side by Side Diff: pkg/analysis_server/tool/spec/from_html.dart

Issue 2787013002: Add experimental attribute to requests (recreated due to git failure) (Closed)
Patch Set: Created 3 years, 8 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 unified diff | Download patch
« no previous file with comments | « no previous file | pkg/analysis_server/tool/spec/to_html.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 /** 5 /**
6 * Code for reading an HTML API description. 6 * Code for reading an HTML API description.
7 */ 7 */
8 library from.html; 8 library from.html;
9 9
10 import 'dart:io'; 10 import 'dart:io';
(...skipping 376 matching lines...) Expand 10 before | Expand all | Expand 10 after
387 * <params> and <result> have the same form as <object>, as described in 387 * <params> and <result> have the same form as <object>, as described in
388 * [typeDeclFromHtml]. 388 * [typeDeclFromHtml].
389 * 389 *
390 * Child elements can occur in any order. 390 * Child elements can occur in any order.
391 */ 391 */
392 Request requestFromHtml(dom.Element html, String context) { 392 Request requestFromHtml(dom.Element html, String context) {
393 String domainName = getAncestor(html, 'domain', context).attributes['name']; 393 String domainName = getAncestor(html, 'domain', context).attributes['name'];
394 checkName(html, 'request', context); 394 checkName(html, 'request', context);
395 String method = html.attributes['method']; 395 String method = html.attributes['method'];
396 context = '$context.${method != null ? method : 'method'}'; 396 context = '$context.${method != null ? method : 'method'}';
397 checkAttributes(html, ['method'], context); 397 checkAttributes(html, ['method'], context,
398 optionalAttributes: ['experimental']);
399 bool experimental = html.attributes['experimental'] == 'true';
398 TypeDecl params; 400 TypeDecl params;
399 TypeDecl result; 401 TypeDecl result;
400 recurse(html, context, { 402 recurse(html, context, {
401 'params': (dom.Element child) { 403 'params': (dom.Element child) {
402 params = typeObjectFromHtml(child, '$context.params'); 404 params = typeObjectFromHtml(child, '$context.params');
403 }, 405 },
404 'result': (dom.Element child) { 406 'result': (dom.Element child) {
405 result = typeObjectFromHtml(child, '$context.result'); 407 result = typeObjectFromHtml(child, '$context.result');
406 } 408 }
407 }); 409 });
408 return new Request(domainName, method, params, result, html); 410 return new Request(domainName, method, params, result, html,
411 experimental: experimental);
409 } 412 }
410 413
411 /** 414 /**
412 * Create a [TypeDefinition] object from an HTML representation such as: 415 * Create a [TypeDefinition] object from an HTML representation such as:
413 * 416 *
414 * <type name="typeName"> 417 * <type name="typeName">
415 * TYPE 418 * TYPE
416 * </type> 419 * </type>
417 * 420 *
418 * Where TYPE is any HTML that can be parsed by [typeDeclFromHtml]. 421 * Where TYPE is any HTML that can be parsed by [typeDeclFromHtml].
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after
546 TypeDefinition typeDefinition = typeDefinitionFromHtml(child); 549 TypeDefinition typeDefinition = typeDefinitionFromHtml(child);
547 types[typeDefinition.name] = typeDefinition; 550 types[typeDefinition.name] = typeDefinition;
548 } 551 }
549 }); 552 });
550 return new Types(types, html); 553 return new Types(types, html);
551 } 554 }
552 555
553 typedef void ElementProcessor(dom.Element element); 556 typedef void ElementProcessor(dom.Element element);
554 557
555 typedef void TextProcessor(dom.Text text); 558 typedef void TextProcessor(dom.Text text);
OLDNEW
« no previous file with comments | « no previous file | pkg/analysis_server/tool/spec/to_html.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698