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

Side by Side Diff: pkg/analysis_server/tool/spec/spec_input.html

Issue 1232393005: Add notification of analyzed files (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 5 years, 5 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
OLDNEW
1 <html> 1 <html>
2 <head> 2 <head>
3 <meta charset="UTF-8"/> 3 <meta charset="UTF-8"/>
4 <title>Analysis Server API Specification</title> 4 <title>Analysis Server API Specification</title>
5 </head> 5 </head>
6 <body> 6 <body>
7 <h1>Analysis Server API Specification</h1> 7 <h1>Analysis Server API Specification</h1>
8 <h1 style="color:#999999">Version <version>1.7.0</version></h1> 8 <h1 style="color:#999999">Version <version>1.8.0</version></h1>
9 <p> 9 <p>
10 This document contains a specification of the API provided by the 10 This document contains a specification of the API provided by the
11 analysis server. The API in this document is currently under 11 analysis server. The API in this document is currently under
12 development. Changes to the API will be accompanied by an update to the 12 development. Changes to the API will be accompanied by an update to the
13 protocol version number according to the principles of semantic 13 protocol version number according to the principles of semantic
14 versioning <a href="http://semver.org/">http://semver.org/</a>. 14 versioning <a href="http://semver.org/">http://semver.org/</a>.
15 </p> 15 </p>
16 <h2>Overview</h2> 16 <h2>Overview</h2>
17 <p> 17 <p>
18 The analysis server API is a bi-directional client-server 18 The analysis server API is a bi-directional client-server
(...skipping 370 matching lines...) Expand 10 before | Expand all | Expand 10 after
389 part that is included in multiple libraries). 389 part that is included in multiple libraries).
390 </p> 390 </p>
391 </field> 391 </field>
392 </result> 392 </result>
393 </request> 393 </request>
394 <request method="getLibraryDependencies"> 394 <request method="getLibraryDependencies">
395 <p> 395 <p>
396 Return library dependency information for use in client-side indexing 396 Return library dependency information for use in client-side indexing
397 and package URI resolution. 397 and package URI resolution.
398 </p> 398 </p>
399 <p>
400 Clients that are only using the libraries field should consider using th e
401 analyzedFiles notification instead.
402 </p>
399 <result> 403 <result>
400 <field name="libraries"> 404 <field name="libraries">
401 <list><ref>FilePath</ref></list> 405 <list><ref>FilePath</ref></list>
402 <p> 406 <p>
403 A list of the paths of library elements referenced by 407 A list of the paths of library elements referenced by
404 files in existing analysis roots. 408 files in existing analysis roots.
405 </p> 409 </p>
406 </field> 410 </field>
407 <field name="packageMap"> 411 <field name="packageMap">
408 <map> 412 <map>
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after
584 <p> 588 <p>
585 Files in any directories that are not overridden by this 589 Files in any directories that are not overridden by this
586 mapping have their package: URI's resolved using the 590 mapping have their package: URI's resolved using the
587 normal pubspec.yaml mechanism. If this field is absent, 591 normal pubspec.yaml mechanism. If this field is absent,
588 or the empty map is specified, that indicates that the 592 or the empty map is specified, that indicates that the
589 normal pubspec.yaml mechanism should always be used. 593 normal pubspec.yaml mechanism should always be used.
590 </p> 594 </p>
591 </field> 595 </field>
592 </params> 596 </params>
593 </request> 597 </request>
598 <request method="setGeneralSubscriptions">
599 <p>
600 Subscribe for general services (that is, services that are not
601 specific to individual files). All previous subscriptions are replaced
602 by the given set of services.
603 </p>
604 <p>
605 It is an error if any of the elements in the list are not valid
606 services. If there is an error, then the current subscriptions will
607 remain unchanged.
608 </p>
609 <params>
610 <field name="subscriptions">
611 <list><ref>GeneralAnalysisService</ref></list>
612 <p>A list of the services being subscribed to.</p>
613 </field>
614 </params>
615 </request>
594 <request method="setPriorityFiles"> 616 <request method="setPriorityFiles">
595 <p> 617 <p>
596 Set the priority files to the files in the given list. A 618 Set the priority files to the files in the given list. A
597 priority file is a file that is given priority when 619 priority file is a file that is given priority when
598 scheduling which analysis work to do first. The list 620 scheduling which analysis work to do first. The list
599 typically contains those files that are visible to the user 621 typically contains those files that are visible to the user
600 and those for which analysis results will have the biggest 622 and those for which analysis results will have the biggest
601 impact on the user experience. The order of the files within 623 impact on the user experience. The order of the files within
602 the list is significant: the first file will be given higher 624 the list is significant: the first file will be given higher
603 priority than the second, the second higher priority than 625 priority than the second, the second higher priority than
(...skipping 17 matching lines...) Expand all
621 <field name="files"> 643 <field name="files">
622 <list><ref>FilePath</ref></list> 644 <list><ref>FilePath</ref></list>
623 <p> 645 <p>
624 The files that are to be a priority for analysis. 646 The files that are to be a priority for analysis.
625 </p> 647 </p>
626 </field> 648 </field>
627 </params> 649 </params>
628 </request> 650 </request>
629 <request method="setSubscriptions"> 651 <request method="setSubscriptions">
630 <p> 652 <p>
631 Subscribe for services. All previous subscriptions are 653 Subscribe for services that are specific to individual files.
632 replaced by the current set of subscriptions. If a given 654 All previous subscriptions are replaced by the current set of
633 service is not included as a key in the map then no files 655 subscriptions. If a given service is not included as a key in the map
634 will be subscribed to the service, exactly as if the service 656 then no files will be subscribed to the service, exactly as if the
635 had been included in the map with an explicit empty list of 657 service had been included in the map with an explicit empty list of
636 files. 658 files.
637 </p> 659 </p>
638 <p> 660 <p>
639 Note that this request determines the set of requested 661 Note that this request determines the set of requested
640 subscriptions. The actual set of subscriptions at any given 662 subscriptions. The actual set of subscriptions at any given
641 time is the intersection of this set with the set of files 663 time is the intersection of this set with the set of files
642 currently subject to analysis. The files currently subject 664 currently subject to analysis. The files currently subject
643 to analysis are the set of files contained within an actual 665 to analysis are the set of files contained within an actual
644 analysis root but not excluded, plus all of the files 666 analysis root but not excluded, plus all of the files
645 transitively reachable from those files via import, export 667 transitively reachable from those files via import, export
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
717 </p> 739 </p>
718 <params> 740 <params>
719 <field name="options"> 741 <field name="options">
720 <ref>AnalysisOptions</ref> 742 <ref>AnalysisOptions</ref>
721 <p> 743 <p>
722 The options that are to be used to control analysis. 744 The options that are to be used to control analysis.
723 </p> 745 </p>
724 </field> 746 </field>
725 </params> 747 </params>
726 </request> 748 </request>
749 <notification event="analyzedFiles">
750 <p>
751 Reports the paths of the files that are being analyzed.
752 </p>
753 <p>
754 This notification is not subscribed to by default. Clients can
755 subscribe by including the value <tt>"ANALYZED_FILES"</tt> in the list
756 of services passed in an analysis.setGeneralSubscriptions request.
757 </p>
758 <params>
759 <field name="directories">
760 <list><ref>FilePath</ref></list>
761 <p>
762 A list of the paths of the files that are being analyzed.
763 </p>
764 </field>
765 </params>
766 </notification>
727 <notification event="errors"> 767 <notification event="errors">
728 <p> 768 <p>
729 Reports the errors associated with a given file. The set of 769 Reports the errors associated with a given file. The set of
730 errors included in the notification is always a complete 770 errors included in the notification is always a complete
731 list that supersedes any previously reported errors. 771 list that supersedes any previously reported errors.
732 </p> 772 </p>
733 <p> 773 <p>
734 It is only possible to unsubscribe from this notification by 774 It is only possible to unsubscribe from this notification by
735 using the command-line flag --no-error-notification. 775 using the command-line flag --no-error-notification.
736 </p> 776 </p>
(...skipping 1258 matching lines...) Expand 10 before | Expand all | Expand 10 after
1995 <ref>bool</ref> 2035 <ref>bool</ref>
1996 <p> 2036 <p>
1997 True if lints should be generated as part of generating 2037 True if lints should be generated as part of generating
1998 errors and warnings. 2038 errors and warnings.
1999 </p> 2039 </p>
2000 </field> 2040 </field>
2001 </object> 2041 </object>
2002 </type> 2042 </type>
2003 <type name="AnalysisService"> 2043 <type name="AnalysisService">
2004 <p> 2044 <p>
2005 An enumeration of the services provided by the analysis 2045 An enumeration of the services provided by the analysis domain that
2006 domain. 2046 are related to a specific list of files.
2007 </p> 2047 </p>
2008 <enum> 2048 <enum>
2009 <value><code>FOLDING</code></value> 2049 <value><code>FOLDING</code></value>
2010 <value><code>HIGHLIGHTS</code></value> 2050 <value><code>HIGHLIGHTS</code></value>
2011 <value><code>INVALIDATE</code></value> 2051 <value>
2052 <code>INVALIDATE</code>
2053 <p>
2054 This service is not currently implemented and will become a
2055 GeneralAnalysisService in a future release.
2056 </p>
2057 </value>
2012 <value><code>NAVIGATION</code></value> 2058 <value><code>NAVIGATION</code></value>
2013 <value><code>OCCURRENCES</code></value> 2059 <value><code>OCCURRENCES</code></value>
2014 <value><code>OUTLINE</code></value> 2060 <value><code>OUTLINE</code></value>
2015 <value><code>OVERRIDES</code></value> 2061 <value><code>OVERRIDES</code></value>
2016 </enum> 2062 </enum>
2017 </type> 2063 </type>
2018 <type name="AnalysisStatus"> 2064 <type name="AnalysisStatus">
2019 <p> 2065 <p>
2020 An indication of the current state of analysis. 2066 An indication of the current state of analysis.
2021 </p> 2067 </p>
(...skipping 432 matching lines...) Expand 10 before | Expand all | Expand 10 after
2454 </p> 2500 </p>
2455 </field> 2501 </field>
2456 <field name="length"> 2502 <field name="length">
2457 <ref>int</ref> 2503 <ref>int</ref>
2458 <p> 2504 <p>
2459 The length of the region to be folded. 2505 The length of the region to be folded.
2460 </p> 2506 </p>
2461 </field> 2507 </field>
2462 </object> 2508 </object>
2463 </type> 2509 </type>
2510 <type name="GeneralAnalysisService">
2511 <p>
2512 An enumeration of the services provided by the analysis domain that ar e
2513 general in nature (that is, are not specific to some list of files).
2514 </p>
2515 <enum>
2516 <value><code>ANALYZED_FILES</code></value>
2517 </enum>
2518 </type>
2464 <type name="HighlightRegion"> 2519 <type name="HighlightRegion">
2465 <p> 2520 <p>
2466 A description of a region that could have special highlighting 2521 A description of a region that could have special highlighting
2467 associated with it. 2522 associated with it.
2468 </p> 2523 </p>
2469 <object> 2524 <object>
2470 <field name="type"> 2525 <field name="type">
2471 <ref>HighlightRegionType</ref> 2526 <ref>HighlightRegionType</ref>
2472 <p> 2527 <p>
2473 The type of highlight associated with the region. 2528 The type of highlight associated with the region.
(...skipping 1459 matching lines...) Expand 10 before | Expand all | Expand 10 after
3933 <h2>Errors</h2> 3988 <h2>Errors</h2>
3934 <p> 3989 <p>
3935 This section contains a list of all of the errors that are 3990 This section contains a list of all of the errors that are
3936 produced by the server and the data that is returned with each. 3991 produced by the server and the data that is returned with each.
3937 </p> 3992 </p>
3938 <p> 3993 <p>
3939 TBD 3994 TBD
3940 </p> 3995 </p>
3941 </body> 3996 </body>
3942 </html> 3997 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698