@alloy-js/csharp 0.23.0-dev.4 → 0.23.0-dev.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dev/scripts/components/library-interface.js +67 -0
- package/dist/dev/scripts/components/library-interface.js.map +1 -0
- package/dist/dev/scripts/components/namespace-directory.js +160 -0
- package/dist/dev/scripts/components/namespace-directory.js.map +1 -0
- package/dist/dev/scripts/generate-builtins.js +45 -0
- package/dist/dev/scripts/generate-builtins.js.map +1 -0
- package/dist/dev/scripts/process-docfx.js +316 -0
- package/dist/dev/scripts/process-docfx.js.map +1 -0
- package/dist/dev/src/access.js +73 -0
- package/dist/dev/src/access.js.map +1 -0
- package/dist/dev/src/access.test.js +43 -0
- package/dist/dev/src/access.test.js.map +1 -0
- package/dist/dev/src/builtins/Microsoft/CSharp/RuntimeBinder/index.js +23 -0
- package/dist/dev/src/builtins/Microsoft/CSharp/RuntimeBinder/index.js.map +1 -0
- package/dist/dev/src/builtins/Microsoft/CSharp/index.js +5 -0
- package/dist/dev/src/builtins/Microsoft/CSharp/index.js.map +1 -0
- package/dist/dev/src/builtins/Microsoft/VisualBasic/FileIO/index.js +473 -0
- package/dist/dev/src/builtins/Microsoft/VisualBasic/FileIO/index.js.map +1 -0
- package/dist/dev/src/builtins/Microsoft/VisualBasic/index.js +2534 -0
- package/dist/dev/src/builtins/Microsoft/VisualBasic/index.js.map +1 -0
- package/dist/dev/src/builtins/Microsoft/Win32/SafeHandles/index.js +320 -0
- package/dist/dev/src/builtins/Microsoft/Win32/SafeHandles/index.js.map +1 -0
- package/dist/dev/src/builtins/Microsoft/Win32/index.js +362 -0
- package/dist/dev/src/builtins/Microsoft/Win32/index.js.map +1 -0
- package/dist/dev/src/builtins/Microsoft/index.js +7 -0
- package/dist/dev/src/builtins/Microsoft/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Buffers/Binary/index.js +536 -0
- package/dist/dev/src/builtins/System/Buffers/Binary/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Buffers/Text/index.js +144 -0
- package/dist/dev/src/builtins/System/Buffers/Text/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Buffers/index.js +605 -0
- package/dist/dev/src/builtins/System/Buffers/index.js.map +1 -0
- package/dist/dev/src/builtins/System/CodeDom/Compiler/index.js +131 -0
- package/dist/dev/src/builtins/System/CodeDom/Compiler/index.js.map +1 -0
- package/dist/dev/src/builtins/System/CodeDom/index.js +5 -0
- package/dist/dev/src/builtins/System/CodeDom/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Collections/Concurrent/index.js +399 -0
- package/dist/dev/src/builtins/System/Collections/Concurrent/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Collections/Frozen/index.js +88 -0
- package/dist/dev/src/builtins/System/Collections/Frozen/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Collections/Generic/index.js +978 -0
- package/dist/dev/src/builtins/System/Collections/Generic/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Collections/Immutable/index.js +1049 -0
- package/dist/dev/src/builtins/System/Collections/Immutable/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Collections/ObjectModel/index.js +394 -0
- package/dist/dev/src/builtins/System/Collections/ObjectModel/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Collections/Specialized/index.js +716 -0
- package/dist/dev/src/builtins/System/Collections/Specialized/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Collections/index.js +1355 -0
- package/dist/dev/src/builtins/System/Collections/index.js.map +1 -0
- package/dist/dev/src/builtins/System/ComponentModel/DataAnnotations/Schema/index.js +143 -0
- package/dist/dev/src/builtins/System/ComponentModel/DataAnnotations/Schema/index.js.map +1 -0
- package/dist/dev/src/builtins/System/ComponentModel/DataAnnotations/index.js +1237 -0
- package/dist/dev/src/builtins/System/ComponentModel/DataAnnotations/index.js.map +1 -0
- package/dist/dev/src/builtins/System/ComponentModel/Design/Serialization/index.js +535 -0
- package/dist/dev/src/builtins/System/ComponentModel/Design/Serialization/index.js.map +1 -0
- package/dist/dev/src/builtins/System/ComponentModel/Design/index.js +2008 -0
- package/dist/dev/src/builtins/System/ComponentModel/Design/index.js.map +1 -0
- package/dist/dev/src/builtins/System/ComponentModel/index.js +6649 -0
- package/dist/dev/src/builtins/System/ComponentModel/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Configuration/Assemblies/index.js +69 -0
- package/dist/dev/src/builtins/System/Configuration/Assemblies/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Configuration/index.js +5 -0
- package/dist/dev/src/builtins/System/Configuration/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Data/Common/index.js +3279 -0
- package/dist/dev/src/builtins/System/Data/Common/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Data/SqlTypes/index.js +2655 -0
- package/dist/dev/src/builtins/System/Data/SqlTypes/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Data/index.js +4504 -0
- package/dist/dev/src/builtins/System/Data/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Diagnostics/CodeAnalysis/index.js +705 -0
- package/dist/dev/src/builtins/System/Diagnostics/CodeAnalysis/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Diagnostics/Contracts/index.js +309 -0
- package/dist/dev/src/builtins/System/Diagnostics/Contracts/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Diagnostics/Metrics/index.js +323 -0
- package/dist/dev/src/builtins/System/Diagnostics/Metrics/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Diagnostics/SymbolStore/index.js +610 -0
- package/dist/dev/src/builtins/System/Diagnostics/SymbolStore/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Diagnostics/Tracing/index.js +954 -0
- package/dist/dev/src/builtins/System/Diagnostics/Tracing/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Diagnostics/index.js +3826 -0
- package/dist/dev/src/builtins/System/Diagnostics/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Drawing/index.js +3305 -0
- package/dist/dev/src/builtins/System/Drawing/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Dynamic/index.js +795 -0
- package/dist/dev/src/builtins/System/Dynamic/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Formats/Asn1/index.js +843 -0
- package/dist/dev/src/builtins/System/Formats/Asn1/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Formats/Tar/index.js +436 -0
- package/dist/dev/src/builtins/System/Formats/Tar/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Formats/index.js +6 -0
- package/dist/dev/src/builtins/System/Formats/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Globalization/index.js +3848 -0
- package/dist/dev/src/builtins/System/Globalization/index.js.map +1 -0
- package/dist/dev/src/builtins/System/IO/Compression/index.js +894 -0
- package/dist/dev/src/builtins/System/IO/Compression/index.js.map +1 -0
- package/dist/dev/src/builtins/System/IO/Enumeration/index.js +218 -0
- package/dist/dev/src/builtins/System/IO/Enumeration/index.js.map +1 -0
- package/dist/dev/src/builtins/System/IO/IsolatedStorage/index.js +495 -0
- package/dist/dev/src/builtins/System/IO/IsolatedStorage/index.js.map +1 -0
- package/dist/dev/src/builtins/System/IO/MemoryMappedFiles/index.js +251 -0
- package/dist/dev/src/builtins/System/IO/MemoryMappedFiles/index.js.map +1 -0
- package/dist/dev/src/builtins/System/IO/Pipelines/index.js +415 -0
- package/dist/dev/src/builtins/System/IO/Pipelines/index.js.map +1 -0
- package/dist/dev/src/builtins/System/IO/Pipes/index.js +723 -0
- package/dist/dev/src/builtins/System/IO/Pipes/index.js.map +1 -0
- package/dist/dev/src/builtins/System/IO/index.js +3713 -0
- package/dist/dev/src/builtins/System/IO/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Linq/Expressions/index.js +2253 -0
- package/dist/dev/src/builtins/System/Linq/Expressions/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Linq/index.js +275 -0
- package/dist/dev/src/builtins/System/Linq/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Net/Cache/index.js +217 -0
- package/dist/dev/src/builtins/System/Net/Cache/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Net/Http/Headers/index.js +1668 -0
- package/dist/dev/src/builtins/System/Net/Http/Headers/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Net/Http/Json/index.js +72 -0
- package/dist/dev/src/builtins/System/Net/Http/Json/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Net/Http/Metrics/index.js +40 -0
- package/dist/dev/src/builtins/System/Net/Http/Metrics/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Net/Http/index.js +1458 -0
- package/dist/dev/src/builtins/System/Net/Http/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Net/Mail/index.js +871 -0
- package/dist/dev/src/builtins/System/Net/Mail/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Net/Mime/index.js +500 -0
- package/dist/dev/src/builtins/System/Net/Mime/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Net/NetworkInformation/index.js +2776 -0
- package/dist/dev/src/builtins/System/Net/NetworkInformation/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Net/Quic/index.js +635 -0
- package/dist/dev/src/builtins/System/Net/Quic/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Net/Security/index.js +1432 -0
- package/dist/dev/src/builtins/System/Net/Security/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Net/Sockets/index.js +3095 -0
- package/dist/dev/src/builtins/System/Net/Sockets/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Net/WebSockets/index.js +876 -0
- package/dist/dev/src/builtins/System/Net/WebSockets/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Net/index.js +5481 -0
- package/dist/dev/src/builtins/System/Net/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Numerics/index.js +3425 -0
- package/dist/dev/src/builtins/System/Numerics/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Reflection/Emit/index.js +4293 -0
- package/dist/dev/src/builtins/System/Reflection/Emit/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Reflection/Metadata/Ecma335/index.js +2218 -0
- package/dist/dev/src/builtins/System/Reflection/Metadata/Ecma335/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Reflection/Metadata/index.js +6045 -0
- package/dist/dev/src/builtins/System/Reflection/Metadata/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Reflection/PortableExecutable/index.js +2020 -0
- package/dist/dev/src/builtins/System/Reflection/PortableExecutable/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Reflection/index.js +5244 -0
- package/dist/dev/src/builtins/System/Reflection/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Resources/index.js +289 -0
- package/dist/dev/src/builtins/System/Resources/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/CompilerServices/index.js +1896 -0
- package/dist/dev/src/builtins/System/Runtime/CompilerServices/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/ConstrainedExecution/index.js +103 -0
- package/dist/dev/src/builtins/System/Runtime/ConstrainedExecution/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/ExceptionServices/index.js +62 -0
- package/dist/dev/src/builtins/System/Runtime/ExceptionServices/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/InteropServices/ComTypes/index.js +67 -0
- package/dist/dev/src/builtins/System/Runtime/InteropServices/ComTypes/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/InteropServices/JavaScript/index.js +210 -0
- package/dist/dev/src/builtins/System/Runtime/InteropServices/JavaScript/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/InteropServices/Marshalling/index.js +1012 -0
- package/dist/dev/src/builtins/System/Runtime/InteropServices/Marshalling/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/InteropServices/ObjectiveC/index.js +79 -0
- package/dist/dev/src/builtins/System/Runtime/InteropServices/ObjectiveC/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/InteropServices/Swift/index.js +49 -0
- package/dist/dev/src/builtins/System/Runtime/InteropServices/Swift/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/InteropServices/index.js +3626 -0
- package/dist/dev/src/builtins/System/Runtime/InteropServices/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/Intrinsics/Arm/index.js +1297 -0
- package/dist/dev/src/builtins/System/Runtime/Intrinsics/Arm/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/Intrinsics/Wasm/index.js +338 -0
- package/dist/dev/src/builtins/System/Runtime/Intrinsics/Wasm/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/Intrinsics/X86/index.js +1372 -0
- package/dist/dev/src/builtins/System/Runtime/Intrinsics/X86/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/Intrinsics/index.js +273 -0
- package/dist/dev/src/builtins/System/Runtime/Intrinsics/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/Loader/index.js +140 -0
- package/dist/dev/src/builtins/System/Runtime/Loader/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/Remoting/index.js +18 -0
- package/dist/dev/src/builtins/System/Runtime/Remoting/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/Serialization/DataContracts/index.js +265 -0
- package/dist/dev/src/builtins/System/Runtime/Serialization/DataContracts/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/Serialization/Formatters/Binary/index.js +61 -0
- package/dist/dev/src/builtins/System/Runtime/Serialization/Formatters/Binary/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/Serialization/Formatters/index.js +83 -0
- package/dist/dev/src/builtins/System/Runtime/Serialization/Formatters/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/Serialization/Json/index.js +192 -0
- package/dist/dev/src/builtins/System/Runtime/Serialization/Json/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/Serialization/index.js +1611 -0
- package/dist/dev/src/builtins/System/Runtime/Serialization/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/Versioning/index.js +336 -0
- package/dist/dev/src/builtins/System/Runtime/Versioning/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Runtime/index.js +245 -0
- package/dist/dev/src/builtins/System/Runtime/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Security/AccessControl/index.js +2343 -0
- package/dist/dev/src/builtins/System/Security/AccessControl/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Security/Authentication/ExtendedProtection/index.js +169 -0
- package/dist/dev/src/builtins/System/Security/Authentication/ExtendedProtection/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Security/Authentication/index.js +212 -0
- package/dist/dev/src/builtins/System/Security/Authentication/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Security/Claims/index.js +844 -0
- package/dist/dev/src/builtins/System/Security/Claims/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Security/Cryptography/X509Certificates/index.js +2633 -0
- package/dist/dev/src/builtins/System/Security/Cryptography/X509Certificates/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Security/Cryptography/index.js +6673 -0
- package/dist/dev/src/builtins/System/Security/Cryptography/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Security/Permissions/index.js +325 -0
- package/dist/dev/src/builtins/System/Security/Permissions/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Security/Policy/index.js +101 -0
- package/dist/dev/src/builtins/System/Security/Policy/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Security/Principal/index.js +1338 -0
- package/dist/dev/src/builtins/System/Security/Principal/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Security/index.js +672 -0
- package/dist/dev/src/builtins/System/Security/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Text/Encodings/Web/index.js +162 -0
- package/dist/dev/src/builtins/System/Text/Encodings/Web/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Text/Encodings/index.js +5 -0
- package/dist/dev/src/builtins/System/Text/Encodings/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Text/Json/Nodes/index.js +250 -0
- package/dist/dev/src/builtins/System/Text/Json/Nodes/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Text/Json/Schema/index.js +78 -0
- package/dist/dev/src/builtins/System/Text/Json/Schema/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Text/Json/Serialization/Metadata/index.js +328 -0
- package/dist/dev/src/builtins/System/Text/Json/Serialization/Metadata/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Text/Json/Serialization/index.js +840 -0
- package/dist/dev/src/builtins/System/Text/Json/Serialization/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Text/Json/index.js +1185 -0
- package/dist/dev/src/builtins/System/Text/Json/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Text/RegularExpressions/index.js +732 -0
- package/dist/dev/src/builtins/System/Text/RegularExpressions/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Text/Unicode/index.js +1199 -0
- package/dist/dev/src/builtins/System/Text/Unicode/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Text/index.js +1748 -0
- package/dist/dev/src/builtins/System/Text/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Threading/Channels/index.js +229 -0
- package/dist/dev/src/builtins/System/Threading/Channels/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Threading/Tasks/Dataflow/index.js +676 -0
- package/dist/dev/src/builtins/System/Threading/Tasks/Dataflow/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Threading/Tasks/Sources/index.js +117 -0
- package/dist/dev/src/builtins/System/Threading/Tasks/Sources/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Threading/Tasks/index.js +721 -0
- package/dist/dev/src/builtins/System/Threading/Tasks/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Threading/index.js +2292 -0
- package/dist/dev/src/builtins/System/Threading/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Timers/index.js +129 -0
- package/dist/dev/src/builtins/System/Timers/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Transactions/index.js +727 -0
- package/dist/dev/src/builtins/System/Transactions/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Web/index.js +84 -0
- package/dist/dev/src/builtins/System/Web/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Windows/Input/index.js +18 -0
- package/dist/dev/src/builtins/System/Windows/Input/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Windows/Markup/index.js +28 -0
- package/dist/dev/src/builtins/System/Windows/Markup/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Windows/index.js +6 -0
- package/dist/dev/src/builtins/System/Windows/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Xml/Linq/index.js +1086 -0
- package/dist/dev/src/builtins/System/Xml/Linq/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Xml/Resolvers/index.js +86 -0
- package/dist/dev/src/builtins/System/Xml/Resolvers/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Xml/Schema/index.js +2993 -0
- package/dist/dev/src/builtins/System/Xml/Schema/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Xml/Serialization/index.js +2356 -0
- package/dist/dev/src/builtins/System/Xml/Serialization/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Xml/XPath/index.js +917 -0
- package/dist/dev/src/builtins/System/Xml/XPath/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Xml/Xsl/index.js +315 -0
- package/dist/dev/src/builtins/System/Xml/Xsl/index.js.map +1 -0
- package/dist/dev/src/builtins/System/Xml/index.js +5736 -0
- package/dist/dev/src/builtins/System/Xml/index.js.map +1 -0
- package/dist/dev/src/builtins/System/index.js +14587 -0
- package/dist/dev/src/builtins/System/index.js.map +1 -0
- package/dist/dev/src/builtins/index.js +3 -0
- package/dist/dev/src/builtins/index.js.map +1 -0
- package/dist/dev/src/components/Declaration.js +9 -0
- package/dist/dev/src/components/Declaration.js.map +1 -0
- package/dist/dev/src/components/Name.js +12 -0
- package/dist/dev/src/components/Name.js.map +1 -0
- package/dist/dev/src/components/Reference.js +13 -0
- package/dist/dev/src/components/Reference.js.map +1 -0
- package/dist/dev/src/components/access-expression/access-expression.js +288 -0
- package/dist/dev/src/components/access-expression/access-expression.js.map +1 -0
- package/dist/dev/src/components/access-expression/access-expression.test.js +608 -0
- package/dist/dev/src/components/access-expression/access-expression.test.js.map +1 -0
- package/dist/dev/src/components/access-expression/part-descriptors.js +14 -0
- package/dist/dev/src/components/access-expression/part-descriptors.js.map +1 -0
- package/dist/dev/src/components/attributes/attributes.js +113 -0
- package/dist/dev/src/components/attributes/attributes.js.map +1 -0
- package/dist/dev/src/components/attributes/attributes.test.js +201 -0
- package/dist/dev/src/components/attributes/attributes.test.js.map +1 -0
- package/dist/dev/src/components/class/declaration.js +123 -0
- package/dist/dev/src/components/class/declaration.js.map +1 -0
- package/dist/dev/src/components/class/declaration.test.js +893 -0
- package/dist/dev/src/components/class/declaration.test.js.map +1 -0
- package/dist/dev/src/components/constructor/constructor.js +60 -0
- package/dist/dev/src/components/constructor/constructor.js.map +1 -0
- package/dist/dev/src/components/constructor/constructor.test.js +62 -0
- package/dist/dev/src/components/constructor/constructor.test.js.map +1 -0
- package/dist/dev/src/components/csproj-file/csproj-file.js +32 -0
- package/dist/dev/src/components/csproj-file/csproj-file.js.map +1 -0
- package/dist/dev/src/components/csproj-file/csproj-file.test.js +70 -0
- package/dist/dev/src/components/csproj-file/csproj-file.test.js.map +1 -0
- package/dist/dev/src/components/doc/comment.js +129 -0
- package/dist/dev/src/components/doc/comment.js.map +1 -0
- package/dist/dev/src/components/doc/comment.test.js +577 -0
- package/dist/dev/src/components/doc/comment.test.js.map +1 -0
- package/dist/dev/src/components/doc/from-markdown.js +83 -0
- package/dist/dev/src/components/doc/from-markdown.js.map +1 -0
- package/dist/dev/src/components/doc/from-markdown.test.js +112 -0
- package/dist/dev/src/components/doc/from-markdown.test.js.map +1 -0
- package/dist/dev/src/components/enum/declaration.js +71 -0
- package/dist/dev/src/components/enum/declaration.js.map +1 -0
- package/dist/dev/src/components/enum/declaration.ref.test.js +221 -0
- package/dist/dev/src/components/enum/declaration.ref.test.js.map +1 -0
- package/dist/dev/src/components/enum/declaration.test.js +82 -0
- package/dist/dev/src/components/enum/declaration.test.js.map +1 -0
- package/dist/dev/src/components/enum/member.js +38 -0
- package/dist/dev/src/components/enum/member.js.map +1 -0
- package/dist/dev/src/components/enum/member.test.js +84 -0
- package/dist/dev/src/components/enum/member.test.js.map +1 -0
- package/dist/dev/src/components/field/field.js +43 -0
- package/dist/dev/src/components/field/field.js.map +1 -0
- package/dist/dev/src/components/field/field.test.js +242 -0
- package/dist/dev/src/components/field/field.test.js.map +1 -0
- package/dist/dev/src/components/if/if-statement.js +56 -0
- package/dist/dev/src/components/if/if-statement.js.map +1 -0
- package/dist/dev/src/components/if/if-statement.test.js +41 -0
- package/dist/dev/src/components/if/if-statement.test.js.map +1 -0
- package/dist/dev/src/components/index.js +31 -0
- package/dist/dev/src/components/index.js.map +1 -0
- package/dist/dev/src/components/interface/declaration.js +114 -0
- package/dist/dev/src/components/interface/declaration.js.map +1 -0
- package/dist/dev/src/components/interface/declaration.test.js +264 -0
- package/dist/dev/src/components/interface/declaration.test.js.map +1 -0
- package/dist/dev/src/components/interface/method.js +100 -0
- package/dist/dev/src/components/interface/method.js.map +1 -0
- package/dist/dev/src/components/interface/method.test.js +432 -0
- package/dist/dev/src/components/interface/method.test.js.map +1 -0
- package/dist/dev/src/components/interface/property.js +80 -0
- package/dist/dev/src/components/interface/property.js.map +1 -0
- package/dist/dev/src/components/interface/property.test.js +305 -0
- package/dist/dev/src/components/interface/property.test.js.map +1 -0
- package/dist/dev/src/components/invocation-expression/invocation-expression.js +94 -0
- package/dist/dev/src/components/invocation-expression/invocation-expression.js.map +1 -0
- package/dist/dev/src/components/invocation-expression/invocation-expression.test.js +153 -0
- package/dist/dev/src/components/invocation-expression/invocation-expression.test.js.map +1 -0
- package/dist/dev/src/components/lexical-scope.js +30 -0
- package/dist/dev/src/components/lexical-scope.js.map +1 -0
- package/dist/dev/src/components/method/method.js +134 -0
- package/dist/dev/src/components/method/method.js.map +1 -0
- package/dist/dev/src/components/method/method.test.js +358 -0
- package/dist/dev/src/components/method/method.test.js.map +1 -0
- package/dist/dev/src/components/method-scope.js +30 -0
- package/dist/dev/src/components/method-scope.js.map +1 -0
- package/dist/dev/src/components/namespace/namespace-name.js +20 -0
- package/dist/dev/src/components/namespace/namespace-name.js.map +1 -0
- package/dist/dev/src/components/namespace/namespace.js +60 -0
- package/dist/dev/src/components/namespace/namespace.js.map +1 -0
- package/dist/dev/src/components/namespace/namespace.test.js +416 -0
- package/dist/dev/src/components/namespace/namespace.test.js.map +1 -0
- package/dist/dev/src/components/namespace-scopes.js +68 -0
- package/dist/dev/src/components/namespace-scopes.js.map +1 -0
- package/dist/dev/src/components/namespace.ref.test.js +419 -0
- package/dist/dev/src/components/namespace.ref.test.js.map +1 -0
- package/dist/dev/src/components/parameters/parameters.js +96 -0
- package/dist/dev/src/components/parameters/parameters.js.map +1 -0
- package/dist/dev/src/components/parameters/parameters.test.js +317 -0
- package/dist/dev/src/components/parameters/parameters.test.js.map +1 -0
- package/dist/dev/src/components/property/property.js +115 -0
- package/dist/dev/src/components/property/property.js.map +1 -0
- package/dist/dev/src/components/property/property.test.js +395 -0
- package/dist/dev/src/components/property/property.test.js.map +1 -0
- package/dist/dev/src/components/record/declaration.js +132 -0
- package/dist/dev/src/components/record/declaration.js.map +1 -0
- package/dist/dev/src/components/record/declaration.test.js +231 -0
- package/dist/dev/src/components/record/declaration.test.js.map +1 -0
- package/dist/dev/src/components/region/region.js +14 -0
- package/dist/dev/src/components/region/region.js.map +1 -0
- package/dist/dev/src/components/region/region.test.js +39 -0
- package/dist/dev/src/components/region/region.test.js.map +1 -0
- package/dist/dev/src/components/source-file/source-file.js +163 -0
- package/dist/dev/src/components/source-file/source-file.js.map +1 -0
- package/dist/dev/src/components/source-file/source-file.test.js +271 -0
- package/dist/dev/src/components/source-file/source-file.test.js.map +1 -0
- package/dist/dev/src/components/source-file/using.test.js +201 -0
- package/dist/dev/src/components/source-file/using.test.js.map +1 -0
- package/dist/dev/src/components/stc/index.js +13 -0
- package/dist/dev/src/components/stc/index.js.map +1 -0
- package/dist/dev/src/components/struct/declaration.js +113 -0
- package/dist/dev/src/components/struct/declaration.js.map +1 -0
- package/dist/dev/src/components/struct/declaration.test.js +400 -0
- package/dist/dev/src/components/struct/declaration.test.js.map +1 -0
- package/dist/dev/src/components/type-parameters/type-parameter-constraints.js +73 -0
- package/dist/dev/src/components/type-parameters/type-parameter-constraints.js.map +1 -0
- package/dist/dev/src/components/type-parameters/type-parameter-constraints.test.js +92 -0
- package/dist/dev/src/components/type-parameters/type-parameter-constraints.test.js.map +1 -0
- package/dist/dev/src/components/type-parameters/type-parameter.js +28 -0
- package/dist/dev/src/components/type-parameters/type-parameter.js.map +1 -0
- package/dist/dev/src/components/type-parameters/type-parameters.js +71 -0
- package/dist/dev/src/components/type-parameters/type-parameters.js.map +1 -0
- package/dist/dev/src/components/type-parameters/type-parameters.test.js +103 -0
- package/dist/dev/src/components/type-parameters/type-parameters.test.js.map +1 -0
- package/dist/dev/src/components/using/using.js +45 -0
- package/dist/dev/src/components/using/using.js.map +1 -0
- package/dist/dev/src/components/using/using.test.js +27 -0
- package/dist/dev/src/components/using/using.test.js.map +1 -0
- package/dist/dev/src/components/var/declaration.js +72 -0
- package/dist/dev/src/components/var/declaration.js.map +1 -0
- package/dist/dev/src/components/var/declaration.test.js +167 -0
- package/dist/dev/src/components/var/declaration.test.js.map +1 -0
- package/dist/dev/src/contexts/format-options.js +9 -0
- package/dist/dev/src/contexts/format-options.js.map +1 -0
- package/dist/dev/src/contexts/global-namespace.js +30 -0
- package/dist/dev/src/contexts/global-namespace.js.map +1 -0
- package/dist/dev/src/contexts/namespace.js +6 -0
- package/dist/dev/src/contexts/namespace.js.map +1 -0
- package/dist/dev/src/contexts/reference-context.js +15 -0
- package/dist/dev/src/contexts/reference-context.js.map +1 -0
- package/dist/dev/src/create-library.js +136 -0
- package/dist/dev/src/create-library.js.map +1 -0
- package/dist/dev/src/create-library.test.js +289 -0
- package/dist/dev/src/create-library.test.js.map +1 -0
- package/dist/dev/src/index.js +9 -0
- package/dist/dev/src/index.js.map +1 -0
- package/dist/dev/src/modifiers.js +21 -0
- package/dist/dev/src/modifiers.js.map +1 -0
- package/dist/dev/src/name-policy.js +36 -0
- package/dist/dev/src/name-policy.js.map +1 -0
- package/dist/dev/src/scopes/class.js +11 -0
- package/dist/dev/src/scopes/class.js.map +1 -0
- package/dist/dev/src/scopes/contexts.js +34 -0
- package/dist/dev/src/scopes/contexts.js.map +1 -0
- package/dist/dev/src/scopes/csharp.js +25 -0
- package/dist/dev/src/scopes/csharp.js.map +1 -0
- package/dist/dev/src/scopes/factories.js +25 -0
- package/dist/dev/src/scopes/factories.js.map +1 -0
- package/dist/dev/src/scopes/index.js +10 -0
- package/dist/dev/src/scopes/index.js.map +1 -0
- package/dist/dev/src/scopes/lexical.js +8 -0
- package/dist/dev/src/scopes/lexical.js.map +1 -0
- package/dist/dev/src/scopes/method.js +14 -0
- package/dist/dev/src/scopes/method.js.map +1 -0
- package/dist/dev/src/scopes/named-type.js +33 -0
- package/dist/dev/src/scopes/named-type.js.map +1 -0
- package/dist/dev/src/scopes/namespace.js +39 -0
- package/dist/dev/src/scopes/namespace.js.map +1 -0
- package/dist/dev/src/scopes/source-file.js +44 -0
- package/dist/dev/src/scopes/source-file.js.map +1 -0
- package/dist/dev/src/symbols/csharp.js +263 -0
- package/dist/dev/src/symbols/csharp.js.map +1 -0
- package/dist/dev/src/symbols/factories.js +145 -0
- package/dist/dev/src/symbols/factories.js.map +1 -0
- package/dist/dev/src/symbols/index.js +7 -0
- package/dist/dev/src/symbols/index.js.map +1 -0
- package/dist/dev/src/symbols/method.js +16 -0
- package/dist/dev/src/symbols/method.js.map +1 -0
- package/dist/dev/src/symbols/named-type.js +42 -0
- package/dist/dev/src/symbols/named-type.js.map +1 -0
- package/dist/dev/src/symbols/namespace.js +55 -0
- package/dist/dev/src/symbols/namespace.js.map +1 -0
- package/dist/dev/src/symbols/reference.js +79 -0
- package/dist/dev/src/symbols/reference.js.map +1 -0
- package/dist/dev/test/utils.js +111 -0
- package/dist/dev/test/utils.js.map +1 -0
- package/dist/dev/test/vitest.setup.js +2 -0
- package/dist/dev/test/vitest.setup.js.map +1 -0
- package/dist/dev/testing/create-wrapper.js +13 -0
- package/dist/dev/testing/create-wrapper.js.map +1 -0
- package/dist/dev/testing/create-wrapper.test.js +300 -0
- package/dist/dev/testing/create-wrapper.test.js.map +1 -0
- package/dist/dev/testing/index.js +2 -0
- package/dist/dev/testing/index.js.map +1 -0
- package/dist/src/components/namespace/namespace.d.ts.map +1 -1
- package/dist/src/components/namespace/namespace.js +11 -13
- package/dist/src/components/namespace/namespace.js.map +1 -1
- package/dist/src/components/namespace/namespace.test.js +61 -2
- package/dist/src/components/namespace/namespace.test.js.map +1 -1
- package/dist/src/components/namespace-scopes.d.ts +16 -0
- package/dist/src/components/namespace-scopes.d.ts.map +1 -1
- package/dist/src/components/namespace-scopes.js +8 -1
- package/dist/src/components/namespace-scopes.js.map +1 -1
- package/dist/src/components/namespace.ref.test.js +41 -0
- package/dist/src/components/namespace.ref.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +13 -6
- package/src/components/namespace/namespace.test.tsx +42 -1
- package/src/components/namespace/namespace.tsx +16 -8
- package/src/components/namespace-scopes.tsx +25 -1
- package/src/components/namespace.ref.test.tsx +29 -0
- package/vitest.config.ts +8 -0
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { shallowReactive, track, TrackOpTypes, trigger, TriggerOpTypes, useScope } from "@alloy-js/core";
|
|
2
|
+
import { CSharpLexicalScope } from "./lexical.js";
|
|
3
|
+
export class CSharpSourceFileScope extends CSharpLexicalScope {
|
|
4
|
+
#usings = shallowReactive(new Set());
|
|
5
|
+
constructor(name, parent, options) {
|
|
6
|
+
super(name, parent, options);
|
|
7
|
+
}
|
|
8
|
+
get usings() {
|
|
9
|
+
return this.#usings;
|
|
10
|
+
}
|
|
11
|
+
get parent() {
|
|
12
|
+
return super.parent;
|
|
13
|
+
}
|
|
14
|
+
set parent(v) {
|
|
15
|
+
super.parent = v;
|
|
16
|
+
}
|
|
17
|
+
addUsing(using) {
|
|
18
|
+
this.#usings.add(using);
|
|
19
|
+
}
|
|
20
|
+
#hasBlockNamespace = false;
|
|
21
|
+
get hasBlockNamespace() {
|
|
22
|
+
track(this, TrackOpTypes.GET, "hasBlockNamespace");
|
|
23
|
+
return this.#hasBlockNamespace;
|
|
24
|
+
}
|
|
25
|
+
set hasBlockNamespace(value) {
|
|
26
|
+
const old = this.#hasBlockNamespace;
|
|
27
|
+
if (this.#hasBlockNamespace === value) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
this.#hasBlockNamespace = value;
|
|
31
|
+
trigger(this, TriggerOpTypes.SET, "hasBlockNamespace", value, old);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export function useSourceFileScope() {
|
|
35
|
+
let scope = useScope();
|
|
36
|
+
while (scope) {
|
|
37
|
+
if (scope instanceof CSharpSourceFileScope) {
|
|
38
|
+
return scope;
|
|
39
|
+
}
|
|
40
|
+
scope = scope.parent;
|
|
41
|
+
}
|
|
42
|
+
return undefined;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=source-file.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["shallowReactive","track","TrackOpTypes","trigger","TriggerOpTypes","useScope","CSharpLexicalScope","CSharpSourceFileScope","usings","Set","constructor","name","parent","options","v","addUsing","using","add","hasBlockNamespace","GET","value","old","SET","useSourceFileScope","scope","undefined"],"sources":["../../../../src/scopes/source-file.ts"],"sourcesContent":[null],"mappings":"AAAA,SAGEA,eAAe,EACfC,KAAK,EACLC,YAAY,EACZC,OAAO,EACPC,cAAc,EACdC,QAAQ,QACH,gBAAgB;AAEvB,SAASC,kBAAkB,QAAQ,cAAc;AAGjD,OAAO,MAAMC,qBAAqB,SAASD,kBAAkB,CAAC;EAC5D,CAACE,MAAM,GAAGR,eAAe,CAAuB,IAAIS,GAAG,CAAC,CAAC,CAAC;EAE1DC,WAAWA,CACTC,IAAY,EACZC,MAA6B,EAC7BC,OAA4B,EAC5B;IACA,KAAK,CAACF,IAAI,EAAEC,MAAM,EAAEC,OAAO,CAAC;EAC9B;EACA,IAAIL,MAAMA,CAAA,EAAG;IACX,OAAO,IAAI,CAAC,CAACA,MAAM;EACrB;EAEA,IAAII,MAAMA,CAAA,EAAG;IACX,OAAO,KAAK,CAACA,MAAM;EACrB;EAEA,IAAIA,MAAMA,CAACE,CAAuB,EAAE;IAClC,KAAK,CAACF,MAAM,GAAGE,CAAC;EAClB;EAEAC,QAAQA,CAACC,KAAsB,EAAE;IAC/B,IAAI,CAAC,CAACR,MAAM,CAACS,GAAG,CAACD,KAAK,CAAC;EACzB;EAEA,CAACE,iBAAiB,GAAY,KAAK;EACnC,IAAIA,iBAAiBA,CAAA,EAAG;IACtBjB,KAAK,CAAC,IAAI,EAAEC,YAAY,CAACiB,GAAG,EAAE,mBAAmB,CAAC;IAClD,OAAO,IAAI,CAAC,CAACD,iBAAiB;EAChC;EAEA,IAAIA,iBAAiBA,CAACE,KAAc,EAAE;IACpC,MAAMC,GAAG,GAAG,IAAI,CAAC,CAACH,iBAAiB;IACnC,IAAI,IAAI,CAAC,CAACA,iBAAiB,KAAKE,KAAK,EAAE;MACrC;IACF;IACA,IAAI,CAAC,CAACF,iBAAiB,GAAGE,KAAK;IAC/BjB,OAAO,CAAC,IAAI,EAAEC,cAAc,CAACkB,GAAG,EAAE,mBAAmB,EAAEF,KAAK,EAAEC,GAAG,CAAC;EACpE;AACF;AAEA,OAAO,SAASE,kBAAkBA,CAAA,EAAG;EACnC,IAAIC,KAA8B,GAAGnB,QAAQ,CAAC,CAAC;EAC/C,OAAOmB,KAAK,EAAE;IACZ,IAAIA,KAAK,YAAYjB,qBAAqB,EAAE;MAC1C,OAAOiB,KAAK;IACd;IACAA,KAAK,GAAGA,KAAK,CAACZ,MAAM;EACtB;EAEA,OAAOa,SAAS;AAClB","ignoreList":[]}
|
|
@@ -0,0 +1,263 @@
|
|
|
1
|
+
import { createSymbol, OutputDeclarationSpace, OutputMemberSpace, OutputSymbol, track, TrackOpTypes, trigger, TriggerOpTypes, watch } from "@alloy-js/core";
|
|
2
|
+
/**
|
|
3
|
+
* This is the base type for all symbols in C#.
|
|
4
|
+
*
|
|
5
|
+
* Many subtypes of this symbol exist for specific purposes. However, this symbol
|
|
6
|
+
* may be used in cases where a more specific symbol is not required.
|
|
7
|
+
*
|
|
8
|
+
* @remarks
|
|
9
|
+
*
|
|
10
|
+
* This is roughly equivalent to the Roslyn ISymbol interface:
|
|
11
|
+
* https://learn.microsoft.com/en-us/dotnet/api/microsoft.codeanalysis.isymbol?view=roslyn-dotnet-4.13.0
|
|
12
|
+
*/
|
|
13
|
+
export class CSharpSymbol extends OutputSymbol {
|
|
14
|
+
symbolKind = "symbol";
|
|
15
|
+
constructor(name, spaces, options = {}) {
|
|
16
|
+
super(name, spaces, options);
|
|
17
|
+
this.#accessibility = options.accessibility;
|
|
18
|
+
this.#isAbstract = options.isAbstract ?? false;
|
|
19
|
+
this.#isVirtual = options.isVirtual ?? false;
|
|
20
|
+
this.#isStatic = options.isStatic ?? false;
|
|
21
|
+
this.#isOverride = options.isOverride ?? false;
|
|
22
|
+
this.#isSealed = options.isSealed ?? false;
|
|
23
|
+
this.#isExtern = options.isExtern ?? false;
|
|
24
|
+
this.#isReadOnly = options.isReadOnly ?? false;
|
|
25
|
+
this.#isNullable = options.isNullable; // undefined means unset, here.
|
|
26
|
+
}
|
|
27
|
+
get enclosingNamespace() {
|
|
28
|
+
if (this.spaces.length === 0) {
|
|
29
|
+
return undefined;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
// todo: probably need to validate that a symbol can't belong to spaces in
|
|
33
|
+
// multiple namespaces.
|
|
34
|
+
const firstSpace = this.spaces[0];
|
|
35
|
+
if (firstSpace instanceof OutputMemberSpace) {
|
|
36
|
+
// this symbol is a member of something, so get the enclosing namespace from
|
|
37
|
+
// the symbol.
|
|
38
|
+
|
|
39
|
+
if (firstSpace.symbol.constructor.name === "NamespaceSymbol") {
|
|
40
|
+
// this is a namespace symbol, so return the namespace symbol itself.
|
|
41
|
+
// can't use instanceof here due to circular reference issues.
|
|
42
|
+
return firstSpace.symbol;
|
|
43
|
+
}
|
|
44
|
+
return firstSpace.symbol.enclosingNamespace;
|
|
45
|
+
} else if (firstSpace instanceof OutputDeclarationSpace) {
|
|
46
|
+
// this symbol is in a lexical scope, so get the namespace symbol from the
|
|
47
|
+
// scope.
|
|
48
|
+
return firstSpace.scope.enclosingNamespace;
|
|
49
|
+
}
|
|
50
|
+
throw new Error("No place to get namespace symbol from");
|
|
51
|
+
return undefined;
|
|
52
|
+
}
|
|
53
|
+
#accessibility;
|
|
54
|
+
get accessibility() {
|
|
55
|
+
track(this, TrackOpTypes.GET, "accessibility");
|
|
56
|
+
return this.#accessibility;
|
|
57
|
+
}
|
|
58
|
+
set accessibility(value) {
|
|
59
|
+
const old = this.#accessibility;
|
|
60
|
+
if (old === value) {
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
this.#accessibility = value;
|
|
64
|
+
trigger(this, TriggerOpTypes.SET, "accessibility", value, old);
|
|
65
|
+
}
|
|
66
|
+
copy() {
|
|
67
|
+
const options = this.getCopyOptions();
|
|
68
|
+
const binder = this.binder;
|
|
69
|
+
const copy = createSymbol(CSharpSymbol, this.name, undefined, {
|
|
70
|
+
...options,
|
|
71
|
+
binder,
|
|
72
|
+
accessibility: this.#accessibility,
|
|
73
|
+
isStatic: this.#isStatic,
|
|
74
|
+
isVirtual: this.#isVirtual,
|
|
75
|
+
isAbstract: this.#isAbstract,
|
|
76
|
+
isOverride: this.#isOverride,
|
|
77
|
+
isSealed: this.#isSealed,
|
|
78
|
+
isExtern: this.#isExtern,
|
|
79
|
+
isReadOnly: this.#isReadOnly
|
|
80
|
+
});
|
|
81
|
+
this.initializeCopy(copy);
|
|
82
|
+
watch(() => this.accessibility, newAccessibility => {
|
|
83
|
+
copy.accessibility = newAccessibility;
|
|
84
|
+
});
|
|
85
|
+
return copy;
|
|
86
|
+
}
|
|
87
|
+
get debugInfo() {
|
|
88
|
+
return {
|
|
89
|
+
...super.debugInfo,
|
|
90
|
+
kind: this.symbolKind,
|
|
91
|
+
accessibility: this.accessibility,
|
|
92
|
+
isAbstract: this.isAbstract,
|
|
93
|
+
isVirtual: this.isVirtual,
|
|
94
|
+
isOverride: this.isOverride,
|
|
95
|
+
isStatic: this.isStatic,
|
|
96
|
+
isSealed: this.isSealed,
|
|
97
|
+
isExtern: this.isExtern,
|
|
98
|
+
isReadOnly: this.isReadOnly,
|
|
99
|
+
isNullable: this.isNullable
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
* Whether this symbol is static.
|
|
105
|
+
*/
|
|
106
|
+
get isStatic() {
|
|
107
|
+
track(this, TrackOpTypes.GET, "isStatic");
|
|
108
|
+
return this.#isStatic;
|
|
109
|
+
}
|
|
110
|
+
set isStatic(value) {
|
|
111
|
+
const old = this.#isStatic;
|
|
112
|
+
if (old === value) {
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
this.#isStatic = value;
|
|
116
|
+
trigger(this, TriggerOpTypes.SET, "isStatic", value, old);
|
|
117
|
+
}
|
|
118
|
+
#isStatic = false;
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* Whether this symbol is virtual.
|
|
122
|
+
*/
|
|
123
|
+
get isVirtual() {
|
|
124
|
+
track(this, TrackOpTypes.GET, "isVirtual");
|
|
125
|
+
return this.#isVirtual;
|
|
126
|
+
}
|
|
127
|
+
set isVirtual(value) {
|
|
128
|
+
const old = this.#isVirtual;
|
|
129
|
+
if (old === value) {
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
this.#isVirtual = value;
|
|
133
|
+
trigger(this, TriggerOpTypes.SET, "isVirtual", value, old);
|
|
134
|
+
}
|
|
135
|
+
#isVirtual = false;
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
* Whether this symbol is abstract.
|
|
139
|
+
*/
|
|
140
|
+
get isAbstract() {
|
|
141
|
+
track(this, TrackOpTypes.GET, "isAbstract");
|
|
142
|
+
return this.#isAbstract;
|
|
143
|
+
}
|
|
144
|
+
set isAbstract(value) {
|
|
145
|
+
const old = this.#isAbstract;
|
|
146
|
+
if (old === value) {
|
|
147
|
+
return;
|
|
148
|
+
}
|
|
149
|
+
this.#isAbstract = value;
|
|
150
|
+
trigger(this, TriggerOpTypes.SET, "isAbstract", value, old);
|
|
151
|
+
}
|
|
152
|
+
#isAbstract = false;
|
|
153
|
+
|
|
154
|
+
/**
|
|
155
|
+
* Whether this symbol is override.
|
|
156
|
+
*/
|
|
157
|
+
get isOverride() {
|
|
158
|
+
track(this, TrackOpTypes.GET, "isOverride");
|
|
159
|
+
return this.#isOverride;
|
|
160
|
+
}
|
|
161
|
+
set isOverride(value) {
|
|
162
|
+
const old = this.#isOverride;
|
|
163
|
+
if (old === value) {
|
|
164
|
+
return;
|
|
165
|
+
}
|
|
166
|
+
this.#isOverride = value;
|
|
167
|
+
trigger(this, TriggerOpTypes.SET, "isOverride", value, old);
|
|
168
|
+
}
|
|
169
|
+
#isOverride = false;
|
|
170
|
+
|
|
171
|
+
/**
|
|
172
|
+
* Whether this symbol is sealed.
|
|
173
|
+
*/
|
|
174
|
+
get isSealed() {
|
|
175
|
+
track(this, TrackOpTypes.GET, "isSealed");
|
|
176
|
+
return this.#isSealed;
|
|
177
|
+
}
|
|
178
|
+
set isSealed(value) {
|
|
179
|
+
const old = this.#isSealed;
|
|
180
|
+
if (old === value) {
|
|
181
|
+
return;
|
|
182
|
+
}
|
|
183
|
+
this.#isSealed = value;
|
|
184
|
+
trigger(this, TriggerOpTypes.SET, "isSealed", value, old);
|
|
185
|
+
}
|
|
186
|
+
#isSealed = false;
|
|
187
|
+
|
|
188
|
+
/**
|
|
189
|
+
* Whether this symbol is extern.
|
|
190
|
+
*/
|
|
191
|
+
get isExtern() {
|
|
192
|
+
track(this, TrackOpTypes.GET, "isExtern");
|
|
193
|
+
return this.#isExtern;
|
|
194
|
+
}
|
|
195
|
+
set isExtern(value) {
|
|
196
|
+
const old = this.#isExtern;
|
|
197
|
+
if (old === value) {
|
|
198
|
+
return;
|
|
199
|
+
}
|
|
200
|
+
this.#isExtern = value;
|
|
201
|
+
trigger(this, TriggerOpTypes.SET, "isExtern", value, old);
|
|
202
|
+
}
|
|
203
|
+
#isExtern = false;
|
|
204
|
+
|
|
205
|
+
/**
|
|
206
|
+
* Whether this symbol is readonly.
|
|
207
|
+
*/
|
|
208
|
+
get isReadOnly() {
|
|
209
|
+
track(this, TrackOpTypes.GET, "isReadOnly");
|
|
210
|
+
return this.#isReadOnly;
|
|
211
|
+
}
|
|
212
|
+
set isReadOnly(value) {
|
|
213
|
+
const old = this.#isReadOnly;
|
|
214
|
+
if (old === value) {
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
217
|
+
this.#isReadOnly = value;
|
|
218
|
+
trigger(this, TriggerOpTypes.SET, "isReadOnly", value, old);
|
|
219
|
+
}
|
|
220
|
+
#isReadOnly = false;
|
|
221
|
+
#isNullable = undefined;
|
|
222
|
+
|
|
223
|
+
/**
|
|
224
|
+
* Whether this symbol might contain null. True if this symbol has a
|
|
225
|
+
* `typeSymbol` and that symbol is nullable, or else when this symbol has the
|
|
226
|
+
* `nullable` option set.
|
|
227
|
+
*/
|
|
228
|
+
get isNullable() {
|
|
229
|
+
if (this.hasTypeSymbol && this.#isNullable === undefined) {
|
|
230
|
+
return this.type.isNullable;
|
|
231
|
+
}
|
|
232
|
+
track(this, TrackOpTypes.GET, "isNullable");
|
|
233
|
+
return !!this.#isNullable;
|
|
234
|
+
}
|
|
235
|
+
set isNullable(value) {
|
|
236
|
+
const old = this.#isNullable;
|
|
237
|
+
if (old === value) {
|
|
238
|
+
return;
|
|
239
|
+
}
|
|
240
|
+
this.#isNullable = value;
|
|
241
|
+
trigger(this, TriggerOpTypes.SET, "isNullable", value, old);
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
export function accessibilityFromProps(props) {
|
|
245
|
+
for (const key of ["public", "internal", "protected", "private"]) {
|
|
246
|
+
if (props[key]) {
|
|
247
|
+
return key;
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
return "private";
|
|
251
|
+
}
|
|
252
|
+
export function nonAccessibilityFromProps(props) {
|
|
253
|
+
return {
|
|
254
|
+
isOverride: props.override ?? false,
|
|
255
|
+
isAbstract: props.abstract ?? false,
|
|
256
|
+
isVirtual: props.virtual ?? false,
|
|
257
|
+
isStatic: props.static ?? false,
|
|
258
|
+
isSealed: props.sealed ?? false,
|
|
259
|
+
isExtern: props.extern ?? false,
|
|
260
|
+
isReadOnly: props.readOnly ?? false
|
|
261
|
+
};
|
|
262
|
+
}
|
|
263
|
+
//# sourceMappingURL=csharp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createSymbol","OutputDeclarationSpace","OutputMemberSpace","OutputSymbol","track","TrackOpTypes","trigger","TriggerOpTypes","watch","CSharpSymbol","symbolKind","constructor","name","spaces","options","accessibility","isAbstract","isVirtual","isStatic","isOverride","isSealed","isExtern","isReadOnly","isNullable","enclosingNamespace","length","undefined","firstSpace","symbol","scope","Error","GET","value","old","SET","copy","getCopyOptions","binder","initializeCopy","newAccessibility","debugInfo","kind","hasTypeSymbol","type","accessibilityFromProps","props","key","nonAccessibilityFromProps","override","abstract","virtual","static","sealed","extern","readOnly"],"sources":["../../../../src/symbols/csharp.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { createSymbol, onCleanup, useBinder } from "@alloy-js/core";
|
|
2
|
+
import { getGlobalNamespace } from "../contexts/global-namespace.js";
|
|
3
|
+
import { useNamespaceContext } from "../contexts/namespace.js";
|
|
4
|
+
import { useCSharpNamePolicy } from "../name-policy.js";
|
|
5
|
+
import { CSharpClassScope } from "../scopes/class.js";
|
|
6
|
+
import { useCSharpScope, useNamedTypeScope } from "../scopes/contexts.js";
|
|
7
|
+
import { CSharpLexicalScope } from "../scopes/lexical.js";
|
|
8
|
+
import { CSharpMethodScope } from "../scopes/method.js";
|
|
9
|
+
import { CSharpNamedTypeScope } from "../scopes/named-type.js";
|
|
10
|
+
import { CSharpNamespaceScope } from "../scopes/namespace.js";
|
|
11
|
+
import { CSharpSourceFileScope } from "../scopes/source-file.js";
|
|
12
|
+
import { CSharpSymbol } from "./csharp.js";
|
|
13
|
+
import { MethodSymbol } from "./method.js";
|
|
14
|
+
import { NamedTypeSymbol } from "./named-type.js";
|
|
15
|
+
import { NamespaceSymbol } from "./namespace.js";
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Create a symbol for a parameter in the current method scope.
|
|
19
|
+
*/
|
|
20
|
+
export function createParameterSymbol(originalName, options = {}) {
|
|
21
|
+
const scope = useCSharpScope();
|
|
22
|
+
if (!(scope instanceof CSharpMethodScope) && !(scope instanceof CSharpClassScope)) {
|
|
23
|
+
throw new Error(`Can't create parameter symbol outside of a method or class scope.`);
|
|
24
|
+
}
|
|
25
|
+
const binder = options.binder ?? scope.binder;
|
|
26
|
+
return createSymbol(CSharpSymbol, originalName, scope.parameters, {
|
|
27
|
+
...withNamePolicy(options, "parameter"),
|
|
28
|
+
binder
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
export function createTypeParameterSymbol(originalName, options = {}) {
|
|
32
|
+
const scope = options.scope ?? useCSharpScope();
|
|
33
|
+
if (!(scope instanceof CSharpMethodScope) && !(scope instanceof CSharpNamedTypeScope)) {
|
|
34
|
+
throw new Error("Can't create a type parameter symbol outside of a method or named type scope.");
|
|
35
|
+
}
|
|
36
|
+
const binder = options.binder ?? scope.binder;
|
|
37
|
+
return createSymbol(CSharpSymbol, originalName, scope.typeParameters, {
|
|
38
|
+
...withNamePolicy(options, "type-parameter"),
|
|
39
|
+
binder
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
export function createFieldSymbol(originalName, options = {}) {
|
|
43
|
+
let nameElement = "class-member-private";
|
|
44
|
+
if (options.accessibility === "public" || options.accessibility === "internal" || options.accessibility === "protected") {
|
|
45
|
+
nameElement = "class-member-public";
|
|
46
|
+
}
|
|
47
|
+
const scope = useNamedTypeScope();
|
|
48
|
+
if (scope.ownerSymbol.typeKind !== "class" && scope.ownerSymbol.typeKind !== "struct") {
|
|
49
|
+
throw new Error(`Can't define a field outside of a class or struct.`);
|
|
50
|
+
}
|
|
51
|
+
const binder = options.binder ?? scope.binder;
|
|
52
|
+
return createSymbol(CSharpSymbol, originalName, scope.members, {
|
|
53
|
+
...withNamePolicy(options, nameElement),
|
|
54
|
+
binder
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
function withCleanup(sym) {
|
|
58
|
+
onCleanup(() => {
|
|
59
|
+
sym.delete();
|
|
60
|
+
});
|
|
61
|
+
return sym;
|
|
62
|
+
}
|
|
63
|
+
export function createNamedTypeSymbol(name, kind, options) {
|
|
64
|
+
const scope = useNamedTypeScope();
|
|
65
|
+
const binder = options?.binder ?? scope.ownerSymbol.binder;
|
|
66
|
+
return withCleanup(createSymbol(NamedTypeSymbol, name, scope.ownerSymbol.members, kind, {
|
|
67
|
+
...options,
|
|
68
|
+
binder
|
|
69
|
+
}));
|
|
70
|
+
}
|
|
71
|
+
export function createNamespaceSymbol(name, options = {}) {
|
|
72
|
+
const scope = useNamespaceContext();
|
|
73
|
+
const parentSymbol = scope?.symbol ?? getGlobalNamespace(options.binder ?? scope?.symbol?.binder ?? useBinder());
|
|
74
|
+
const names = normalizeNamespaceName(name);
|
|
75
|
+
let current = parentSymbol;
|
|
76
|
+
for (const name of names) {
|
|
77
|
+
current = createNamespaceSymbolInternal(name, current, options);
|
|
78
|
+
}
|
|
79
|
+
return current;
|
|
80
|
+
}
|
|
81
|
+
function normalizeNamespaceName(name) {
|
|
82
|
+
if (Array.isArray(name)) {
|
|
83
|
+
return name;
|
|
84
|
+
}
|
|
85
|
+
if (typeof name === "string" && name.includes(".")) {
|
|
86
|
+
return name.split(".");
|
|
87
|
+
}
|
|
88
|
+
return [name];
|
|
89
|
+
}
|
|
90
|
+
function createNamespaceSymbolInternal(name, parentSymbol, options = {}) {
|
|
91
|
+
const namePolicy = options.namePolicy ?? useCSharpNamePolicy().for("namespace");
|
|
92
|
+
const expectedName = namePolicy(typeof name === "string" ? name : name.name);
|
|
93
|
+
if (parentSymbol.members.symbolNames.has(expectedName)) {
|
|
94
|
+
return parentSymbol.members.symbolNames.get(expectedName);
|
|
95
|
+
}
|
|
96
|
+
const binder = options.binder ?? parentSymbol.binder;
|
|
97
|
+
return withCleanup(createSymbol(NamespaceSymbol, name, parentSymbol, {
|
|
98
|
+
...withNamePolicy(options, "namespace"),
|
|
99
|
+
binder
|
|
100
|
+
}));
|
|
101
|
+
}
|
|
102
|
+
export function createMethodSymbol(originalName, options = {}) {
|
|
103
|
+
const scope = useNamedTypeScope();
|
|
104
|
+
if (scope.ownerSymbol.typeKind !== "class" && scope.ownerSymbol.typeKind !== "interface" && scope.ownerSymbol.typeKind !== "struct") {
|
|
105
|
+
throw new Error(`Can't define a method outside of a class, interface, or struct.`);
|
|
106
|
+
}
|
|
107
|
+
const binder = options.binder ?? scope.binder;
|
|
108
|
+
return withCleanup(createSymbol(MethodSymbol, originalName, scope.members, options.methodKind ?? "ordinary", {
|
|
109
|
+
...withNamePolicy(options, "class-method"),
|
|
110
|
+
binder
|
|
111
|
+
}));
|
|
112
|
+
}
|
|
113
|
+
export function createPropertySymbol(name, options) {
|
|
114
|
+
const scope = useNamedTypeScope();
|
|
115
|
+
const binder = options.binder ?? scope.binder;
|
|
116
|
+
return withCleanup(createSymbol(CSharpSymbol, name, scope.members, {
|
|
117
|
+
...withNamePolicy(options, "class-property"),
|
|
118
|
+
binder
|
|
119
|
+
}));
|
|
120
|
+
}
|
|
121
|
+
export function createVariableSymbol(originalName, options = {}) {
|
|
122
|
+
let scope = useCSharpScope();
|
|
123
|
+
if (scope instanceof CSharpNamespaceScope && scope.ownerSymbol === getGlobalNamespace(scope.ownerSymbol.binder)) {
|
|
124
|
+
// allow top-level variables in the global namespace, which are local to the source file.
|
|
125
|
+
scope = scope.parent;
|
|
126
|
+
if (!(scope instanceof CSharpSourceFileScope)) {
|
|
127
|
+
throw new Error("Variable declarations must be in the global namespace or within a lexical scope.");
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
if (!(scope instanceof CSharpLexicalScope)) {
|
|
131
|
+
throw new Error(`Can't create variable symbol outside of a lexical scope, got a ${scope.constructor.name}.`);
|
|
132
|
+
}
|
|
133
|
+
const binder = options.binder ?? scope.binder;
|
|
134
|
+
return withCleanup(createSymbol(CSharpSymbol, originalName, scope.localVariables, {
|
|
135
|
+
...withNamePolicy(options, "variable"),
|
|
136
|
+
binder
|
|
137
|
+
}));
|
|
138
|
+
}
|
|
139
|
+
function withNamePolicy(options, elementType) {
|
|
140
|
+
return {
|
|
141
|
+
...options,
|
|
142
|
+
namePolicy: options.namePolicy ?? useCSharpNamePolicy().for(elementType)
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
//# sourceMappingURL=factories.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createSymbol","onCleanup","useBinder","getGlobalNamespace","useNamespaceContext","useCSharpNamePolicy","CSharpClassScope","useCSharpScope","useNamedTypeScope","CSharpLexicalScope","CSharpMethodScope","CSharpNamedTypeScope","CSharpNamespaceScope","CSharpSourceFileScope","CSharpSymbol","MethodSymbol","NamedTypeSymbol","NamespaceSymbol","createParameterSymbol","originalName","options","scope","Error","binder","parameters","withNamePolicy","createTypeParameterSymbol","typeParameters","createFieldSymbol","nameElement","accessibility","ownerSymbol","typeKind","members","withCleanup","sym","delete","createNamedTypeSymbol","name","kind","createNamespaceSymbol","parentSymbol","symbol","names","normalizeNamespaceName","current","createNamespaceSymbolInternal","Array","isArray","includes","split","namePolicy","for","expectedName","symbolNames","has","get","createMethodSymbol","methodKind","createPropertySymbol","createVariableSymbol","parent","constructor","localVariables","elementType"],"sources":["../../../../src/symbols/factories.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/symbols/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc,aAAa;AAC3B,cAAc,gBAAgB;AAC9B,cAAc,aAAa;AAC3B,cAAc,iBAAiB;AAC/B,cAAc,gBAAgB;AAC9B,cAAc,gBAAgB","ignoreList":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { CSharpSymbol } from "./csharp.js";
|
|
2
|
+
/**
|
|
3
|
+
* A symbol for a method or constructor of a class, interface, or struct.
|
|
4
|
+
*/
|
|
5
|
+
export class MethodSymbol extends CSharpSymbol {
|
|
6
|
+
symbolKind = "method";
|
|
7
|
+
#methodKind;
|
|
8
|
+
get methodKind() {
|
|
9
|
+
return this.#methodKind;
|
|
10
|
+
}
|
|
11
|
+
constructor(name, spaces, kind, options = {}) {
|
|
12
|
+
super(name, spaces, options);
|
|
13
|
+
this.#methodKind = kind;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=method.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CSharpSymbol","MethodSymbol","symbolKind","methodKind","constructor","name","spaces","kind","options"],"sources":["../../../../src/symbols/method.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,YAAY,QAA6B,aAAa;AAI/D;AACA;AACA;AACA,OAAO,MAAMC,YAAY,SAASD,YAAY,CAAC;EAC7BE,UAAU,GAAG,QAAQ;EAErC,CAACC,UAAU;EACX,IAAIA,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI,CAAC,CAACA,UAAU;EACzB;EAEAC,WAAWA,CACTC,IAAsB,EACtBC,MAA+B,EAC/BC,IAAiB,EACjBC,OAA4B,GAAG,CAAC,CAAC,EACjC;IACA,KAAK,CAACH,IAAI,EAAEC,MAAM,EAAEE,OAAO,CAAC;IAC5B,IAAI,CAAC,CAACL,UAAU,GAAGI,IAAI;EACzB;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { createSymbol } from "@alloy-js/core";
|
|
2
|
+
import { CSharpSymbol } from "./csharp.js";
|
|
3
|
+
|
|
4
|
+
// represents a symbol from a .cs file. Class, enum, interface etc.
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* A symbol for a named type in C# such as a class, interface, enum, and so
|
|
8
|
+
* forth. Named types are generally defined in a namespace, and can have members
|
|
9
|
+
* of their own.
|
|
10
|
+
*/
|
|
11
|
+
export class NamedTypeSymbol extends CSharpSymbol {
|
|
12
|
+
symbolKind = "named-type";
|
|
13
|
+
static memberSpaces = ["members"];
|
|
14
|
+
constructor(name, spaces, kind, options) {
|
|
15
|
+
super(name, spaces, options);
|
|
16
|
+
this.#typeKind = kind;
|
|
17
|
+
}
|
|
18
|
+
#typeKind;
|
|
19
|
+
get typeKind() {
|
|
20
|
+
return this.#typeKind;
|
|
21
|
+
}
|
|
22
|
+
copy() {
|
|
23
|
+
const options = this.getCopyOptions();
|
|
24
|
+
const binder = this.binder;
|
|
25
|
+
const copy = createSymbol(NamedTypeSymbol, this.name, undefined, this.#typeKind, {
|
|
26
|
+
...options,
|
|
27
|
+
binder
|
|
28
|
+
});
|
|
29
|
+
this.initializeCopy(copy);
|
|
30
|
+
return copy;
|
|
31
|
+
}
|
|
32
|
+
get members() {
|
|
33
|
+
return this.memberSpaceFor("members");
|
|
34
|
+
}
|
|
35
|
+
get debugInfo() {
|
|
36
|
+
return {
|
|
37
|
+
...super.debugInfo,
|
|
38
|
+
typeKind: this.typeKind
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=named-type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createSymbol","CSharpSymbol","NamedTypeSymbol","symbolKind","memberSpaces","constructor","name","spaces","kind","options","typeKind","copy","getCopyOptions","binder","undefined","initializeCopy","members","memberSpaceFor","debugInfo"],"sources":["../../../../src/symbols/named-type.ts"],"sourcesContent":[null],"mappings":"AAAA,SAA+BA,YAAY,QAAQ,gBAAgB;AACnE,SAASC,YAAY,QAA6B,aAAa;;AAE/D;;AAWA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,eAAe,SAASD,YAAY,CAAC;EAChCE,UAAU,GAAwB,YAAY;EAC9D,OAAuBC,YAAY,GAAG,CAAC,SAAS,CAAC;EAEjDC,WAAWA,CACTC,IAAsB,EACtBC,MAA+C,EAC/CC,IAAuB,EACvBC,OAA6B,EAC7B;IACA,KAAK,CAACH,IAAI,EAAEC,MAAM,EAAEE,OAAO,CAAC;IAC5B,IAAI,CAAC,CAACC,QAAQ,GAAGF,IAAI;EACvB;EAEA,CAACE,QAAQ;EACT,IAAIA,QAAQA,CAAA,EAAG;IACb,OAAO,IAAI,CAAC,CAACA,QAAQ;EACvB;EAEAC,IAAIA,CAAA,EAAG;IACL,MAAMF,OAAO,GAAG,IAAI,CAACG,cAAc,CAAC,CAAC;IACrC,MAAMC,MAAM,GAAG,IAAI,CAACA,MAAM;IAC1B,MAAMF,IAAI,GAAGX,YAAY,CACvBE,eAAe,EACf,IAAI,CAACI,IAAI,EACTQ,SAAS,EACT,IAAI,CAAC,CAACJ,QAAQ,EACd;MACE,GAAGD,OAAO;MACVI;IACF,CACF,CAAC;IACD,IAAI,CAACE,cAAc,CAACJ,IAAI,CAAC;IACzB,OAAOA,IAAI;EACb;EAEA,IAAIK,OAAOA,CAAA,EAAG;IACZ,OAAO,IAAI,CAACC,cAAc,CAAC,SAAS,CAAC;EACvC;EAEA,IAAaC,SAASA,CAAA,EAA4B;IAChD,OAAO;MACL,GAAG,KAAK,CAACA,SAAS;MAClBR,QAAQ,EAAE,IAAI,CAACA;IACjB,CAAC;EACH;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { createSymbol } from "@alloy-js/core";
|
|
2
|
+
import { NamedTypeSymbol } from "./named-type.js";
|
|
3
|
+
/**
|
|
4
|
+
* A symbol for a namespace in C#.
|
|
5
|
+
*/
|
|
6
|
+
export class NamespaceSymbol extends NamedTypeSymbol {
|
|
7
|
+
symbolKind = "namespace";
|
|
8
|
+
constructor(name, parentNamespace, options) {
|
|
9
|
+
const space = parentNamespace?.members;
|
|
10
|
+
super(name, space, "namespace", options);
|
|
11
|
+
this.#isGlobal = !!options?.isGlobal;
|
|
12
|
+
}
|
|
13
|
+
#isGlobal;
|
|
14
|
+
/**
|
|
15
|
+
* Whether this symbol is the global namespace symbol.
|
|
16
|
+
*/
|
|
17
|
+
get isGlobal() {
|
|
18
|
+
return this.#isGlobal;
|
|
19
|
+
}
|
|
20
|
+
getFullyQualifiedName(options = {}) {
|
|
21
|
+
const parts = [];
|
|
22
|
+
|
|
23
|
+
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
24
|
+
let current = this;
|
|
25
|
+
while (current && !current.isGlobal) {
|
|
26
|
+
parts.unshift(current.name);
|
|
27
|
+
current = current.ownerSymbol;
|
|
28
|
+
}
|
|
29
|
+
const idPart = parts.join(".");
|
|
30
|
+
if (options.omitGlobal) {
|
|
31
|
+
return idPart;
|
|
32
|
+
} else {
|
|
33
|
+
return `global::${idPart}`;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
copy() {
|
|
37
|
+
const options = this.getCopyOptions();
|
|
38
|
+
const binder = this.binder;
|
|
39
|
+
const copy = createSymbol(NamespaceSymbol, this.name, undefined, {
|
|
40
|
+
...options,
|
|
41
|
+
binder,
|
|
42
|
+
isGlobal: this.#isGlobal
|
|
43
|
+
});
|
|
44
|
+
this.initializeCopy(copy);
|
|
45
|
+
return copy;
|
|
46
|
+
}
|
|
47
|
+
get debugInfo() {
|
|
48
|
+
return {
|
|
49
|
+
...super.debugInfo,
|
|
50
|
+
isGlobal: this.isGlobal,
|
|
51
|
+
fullyQualifiedName: this.getFullyQualifiedName()
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=namespace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createSymbol","NamedTypeSymbol","NamespaceSymbol","symbolKind","constructor","name","parentNamespace","options","space","members","isGlobal","getFullyQualifiedName","parts","current","unshift","ownerSymbol","idPart","join","omitGlobal","copy","getCopyOptions","binder","undefined","initializeCopy","debugInfo","fullyQualifiedName"],"sources":["../../../../src/symbols/namespace.ts"],"sourcesContent":[null],"mappings":"AAAA,SAAuCA,YAAY,QAAQ,gBAAgB;AAC3E,SAASC,eAAe,QAAQ,iBAAiB;AAMjD;AACA;AACA;AACA,OAAO,MAAMC,eAAe,SAASD,eAAe,CAAC;EACnCE,UAAU,GAAG,WAAW;EACxCC,WAAWA,CACTC,IAAsB,EACtBC,eAAiC,EACjCC,OAAgC,EAChC;IACA,MAAMC,KAAK,GAAGF,eAAe,EAAEG,OAAO;IAEtC,KAAK,CAACJ,IAAI,EAAEG,KAAK,EAAE,WAAW,EAAED,OAAO,CAAC;IAExC,IAAI,CAAC,CAACG,QAAQ,GAAG,CAAC,CAACH,OAAO,EAAEG,QAAQ;EACtC;EAEA,CAACA,QAAQ;EACT;AACF;AACA;EACE,IAAIA,QAAQA,CAAA,EAAG;IACb,OAAO,IAAI,CAAC,CAACA,QAAQ;EACvB;EAEAC,qBAAqBA,CAACJ,OAAiC,GAAG,CAAC,CAAC,EAAU;IACpE,MAAMK,KAAK,GAAG,EAAE;;IAEhB;IACA,IAAIC,OAAoC,GAAG,IAAI;IAE/C,OAAOA,OAAO,IAAI,CAACA,OAAO,CAACH,QAAQ,EAAE;MACnCE,KAAK,CAACE,OAAO,CAACD,OAAO,CAACR,IAAI,CAAC;MAC3BQ,OAAO,GAAGA,OAAO,CAACE,WAA0C;IAC9D;IAEA,MAAMC,MAAM,GAAGJ,KAAK,CAACK,IAAI,CAAC,GAAG,CAAC;IAE9B,IAAIV,OAAO,CAACW,UAAU,EAAE;MACtB,OAAOF,MAAM;IACf,CAAC,MAAM;MACL,OAAO,WAAWA,MAAM,EAAE;IAC5B;EACF;EAEAG,IAAIA,CAAA,EAAG;IACL,MAAMZ,OAAO,GAAG,IAAI,CAACa,cAAc,CAAC,CAAC;IACrC,MAAMC,MAAM,GAAG,IAAI,CAACA,MAAM;IAC1B,MAAMF,IAAI,GAAGnB,YAAY,CAACE,eAAe,EAAE,IAAI,CAACG,IAAI,EAAEiB,SAAS,EAAE;MAC/D,GAAGf,OAAO;MACVc,MAAM;MACNX,QAAQ,EAAE,IAAI,CAAC,CAACA;IAClB,CAAC,CAAC;IACF,IAAI,CAACa,cAAc,CAACJ,IAAI,CAAC;IACzB,OAAOA,IAAI;EACb;EAEA,IAAaK,SAASA,CAAA,EAA4B;IAChD,OAAO;MACL,GAAG,KAAK,CAACA,SAAS;MAClBd,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBe,kBAAkB,EAAE,IAAI,CAACd,qBAAqB,CAAC;IACjD,CAAC;EACH;AACF","ignoreList":[]}
|