Was ist der Unterschied zwischen der DeclaringSyntaxReferences Eigenschaft und der Locations Eigenschaft in der ISyntax Schnittstelle?Unterschied zwischen ISymbol.DeclargingSyntaxReferences und ISymbol.Locations
3
A
Antwort
4
Der Hinweis auf die Antwort ist in dem <remarks>
Kommentarbereich:
Die Syntax Knoten (n), die das Symbol erklärt. Wenn das Symbol in Metadaten deklariert wurde oder implizit deklariert wurde, wird ein leeres schreibgeschütztes Array zurückgegeben.
Das bedeutet, dass Locations
auch Metadaten-Referenzdeklarationen und implizit deklarierte Speicherorte zurückgibt. Sie können Belege für die in der LocationsTests.cs Datei sehen:
var c = s.GetTypeMembers("C", 0).Single() as NamedTypeSymbol;
var obj = c.BaseType;
Assert.Equal("MetadataFile(CommonLanguageRuntimeLibrary)", obj.Locations[0].ToString());
wo c
ist die class C
in:
namespace N.S{class C{int F; void M(int P}{}}
so obj
System.Object
ist. Dies ist sinnvoll, weil Sie keinen tatsächlichen Quellcode haben und daher Syntax, in der Kompilierung, die System.Object
definieren würde.
Verwandte Themen
- 1. Unterschied zwischen Vorzeichen & und *?
- 2. VBA: Unterschied zwischen & und +
- 3. Unterschied zwischen "**/* /" und "** /"?
- 4. Unterschied zwischen $ # und $ {# @}
- 5. Unterschied zwischen = und: =
- 6. Unterschied zwischen '#', '%' und '$'
- 7. MySQL: Unterschied zwischen ', `,' und '
- 8. C++ Unterschied zwischen '//' und '///'
- 9. Unterschied zwischen String.Empty und ""
- 10. Unterschied zwischen `% in%` und `==`
- 11. Unterschied zwischen numpy.logical_and und &
- 12. Unterschied zwischen. und #
- 13. Unterschied zwischen // und http: //
- 14. Unterschied zwischen -Wconversion zwischen gcc und g ++
- 15. Unterschied zwischen Wörterbuch und Hashtable
- 16. Unterschied zwischen FetchMode und FetchType
- 17. Unterschied zwischen Application_Start und Application_OnStart
- 18. Unterschied zwischen Uint8Array und Uint8ClampedArray
- 19. Unterschied zwischen BOOST_CHECK_CLOSE und BOOST_CHECK_CLOSE_FRACTION?
- 20. Unterschied zwischen Suche und Index
- 21. Unterschied zwischen AJAX und Senden
- 22. Unterschied zwischen Spekulation und Vorhersage
- 23. Unterschied zwischen inproc und outproc
- 24. Unterschied zwischen Clojure und Clojurescript?
- 25. Unterschied zwischen NSArray und NSMutableArray
- 26. Unterschied zwischen libcurl und libsoup
- 27. Unterschied zwischen DirectoryCatalog und AssemblyCatalog
- 28. Unterschied zwischen * y ++ und ++ * y?
- 29. Unterschied zwischen SwingWorker und SwingUtilities.invokeLater
- 30. Unterschied zwischen String.scan und String.split