@alloy-js/csharp 0.23.0-dev.1 → 0.23.0-dev.3

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.
Files changed (65) hide show
  1. package/CHANGELOG.md +1 -14
  2. package/dist/src/components/access-expression/access-expression.d.ts +1 -1
  3. package/dist/src/components/access-expression/access-expression.d.ts.map +1 -1
  4. package/dist/src/components/enum/member.d.ts.map +1 -1
  5. package/dist/src/components/enum/member.js +2 -2
  6. package/dist/src/components/enum/member.js.map +1 -1
  7. package/dist/src/components/lexical-scope.d.ts.map +1 -1
  8. package/dist/src/components/lexical-scope.js +4 -3
  9. package/dist/src/components/lexical-scope.js.map +1 -1
  10. package/dist/src/components/method-scope.d.ts.map +1 -1
  11. package/dist/src/components/method-scope.js +4 -3
  12. package/dist/src/components/method-scope.js.map +1 -1
  13. package/dist/src/components/source-file/source-file.d.ts.map +1 -1
  14. package/dist/src/components/source-file/source-file.js +6 -3
  15. package/dist/src/components/source-file/source-file.js.map +1 -1
  16. package/dist/src/contexts/global-namespace.d.ts.map +1 -1
  17. package/dist/src/contexts/global-namespace.js +4 -4
  18. package/dist/src/contexts/global-namespace.js.map +1 -1
  19. package/dist/src/create-library.d.ts.map +1 -1
  20. package/dist/src/create-library.js +7 -7
  21. package/dist/src/create-library.js.map +1 -1
  22. package/dist/src/scopes/csharp.d.ts +1 -0
  23. package/dist/src/scopes/csharp.d.ts.map +1 -1
  24. package/dist/src/scopes/csharp.js +10 -0
  25. package/dist/src/scopes/csharp.js.map +1 -1
  26. package/dist/src/scopes/factories.d.ts.map +1 -1
  27. package/dist/src/scopes/factories.js +4 -3
  28. package/dist/src/scopes/factories.js.map +1 -1
  29. package/dist/src/scopes/namespace.js +2 -2
  30. package/dist/src/scopes/namespace.js.map +1 -1
  31. package/dist/src/symbols/csharp.d.ts +1 -0
  32. package/dist/src/symbols/csharp.d.ts.map +1 -1
  33. package/dist/src/symbols/csharp.js +19 -2
  34. package/dist/src/symbols/csharp.js.map +1 -1
  35. package/dist/src/symbols/factories.d.ts.map +1 -1
  36. package/dist/src/symbols/factories.js +42 -10
  37. package/dist/src/symbols/factories.js.map +1 -1
  38. package/dist/src/symbols/named-type.d.ts +1 -0
  39. package/dist/src/symbols/named-type.d.ts.map +1 -1
  40. package/dist/src/symbols/named-type.js +12 -1
  41. package/dist/src/symbols/named-type.js.map +1 -1
  42. package/dist/src/symbols/namespace.d.ts +1 -0
  43. package/dist/src/symbols/namespace.d.ts.map +1 -1
  44. package/dist/src/symbols/namespace.js +11 -1
  45. package/dist/src/symbols/namespace.js.map +1 -1
  46. package/dist/testing/create-wrapper.d.ts.map +1 -1
  47. package/dist/testing/create-wrapper.js +2 -1
  48. package/dist/testing/create-wrapper.js.map +1 -1
  49. package/dist/tsconfig.tsbuildinfo +1 -1
  50. package/package.json +11 -7
  51. package/src/components/enum/member.tsx +16 -5
  52. package/src/components/lexical-scope.tsx +15 -4
  53. package/src/components/method-scope.tsx +15 -4
  54. package/src/components/source-file/source-file.tsx +11 -2
  55. package/src/contexts/global-namespace.ts +11 -6
  56. package/src/create-library.ts +18 -9
  57. package/src/scopes/csharp.ts +11 -0
  58. package/src/scopes/factories.ts +4 -4
  59. package/src/scopes/namespace.ts +2 -2
  60. package/src/symbols/csharp.ts +20 -1
  61. package/src/symbols/factories.ts +46 -34
  62. package/src/symbols/named-type.ts +15 -3
  63. package/src/symbols/namespace.ts +12 -2
  64. package/temp/api.json +141 -234
  65. package/testing/create-wrapper.tsx +2 -1
package/CHANGELOG.md CHANGED
@@ -6,7 +6,6 @@
6
6
 
7
7
  - [#328](https://github.com/alloy-framework/alloy/pull/328) Empty namespaces now don't render an empty block.
8
8
 
9
-
10
9
  ## 0.21.0
11
10
 
12
11
  ### Bug Fixes
@@ -39,7 +38,6 @@
39
38
 
40
39
  - [#283](https://github.com/alloy-framework/alloy/pull/283) Rename `UsingDirective` -> `Usings`
41
40
 
42
-
43
41
  ## 0.20.0
44
42
 
45
43
  ### Bug Fixes
@@ -58,13 +56,12 @@
58
56
 
59
57
  - [#206](https://github.com/alloy-framework/alloy/pull/206) Update core's representation of symbols and scopes. These changes should not impact usage of language components in code generators, but there are some significant changes for language library implementations. See https://github.com/alloy-framework/alloy/pull/206 for more details.
60
58
 
61
-
62
59
  ## 0.19.0
63
60
 
64
61
  ### Features
65
62
 
66
63
  - [#246](https://github.com/alloy-framework/alloy/pull/246) Add support for `struct` declaration
67
- - [#250](https://github.com/alloy-framework/alloy/pull/250) Fields support `new`, `readonly`, `static` and `volatile` modifier
64
+ - [#250](https://github.com/alloy-framework/alloy/pull/250) Fields support `new`, `readonly`, `static` and `volatile` modifier
68
65
  - [#250](https://github.com/alloy-framework/alloy/pull/250) Private field respect c# naming convention of `_camelCase`
69
66
  - [#251](https://github.com/alloy-framework/alloy/pull/251) Support `readonly`, `override` and `extern` modifier for `Method`
70
67
  - [#247](https://github.com/alloy-framework/alloy/pull/247) Add support for expression body syntax in methods
@@ -75,7 +72,6 @@
75
72
  - [#248](https://github.com/alloy-framework/alloy/pull/248) Rename `ClassConstructor` to `Constructor` to allow using it with `StructDeclaration`
76
73
  - [#248](https://github.com/alloy-framework/alloy/pull/248) Rename `ClassMethod` to `Method` to allow using it with `StructDeclaration`
77
74
 
78
-
79
75
  ## 0.18.0
80
76
 
81
77
  ### Bug Fixes
@@ -106,7 +102,6 @@
106
102
 
107
103
  - [#192](https://github.com/alloy-framework/alloy/pull/192) Rename `Class` -> `ClassDeclaration` and `Enum` -> `EnumDeclaration`
108
104
 
109
-
110
105
  ## 0.17.0
111
106
 
112
107
  No changes, version bump only.
@@ -137,7 +132,6 @@ No changes, version bump only.
137
132
 
138
133
  - [#105](https://github.com/alloy-framework/alloy/pull/105) Updated dependencies
139
134
 
140
-
141
135
  ## 0.10.0
142
136
 
143
137
  No changes, version bump only.
@@ -152,7 +146,6 @@ No changes, version bump only.
152
146
 
153
147
  - [#67](https://github.com/alloy-framework/alloy/pull/67) Removed all default refkeys based on declaration name.
154
148
 
155
-
156
149
  ## 0.7.0
157
150
 
158
151
  No changes, version bump only.
@@ -163,7 +156,6 @@ No changes, version bump only.
163
156
 
164
157
  - [#56](https://github.com/alloy-framework/alloy/pull/56) Emitted code is now formatted properly.
165
158
 
166
-
167
159
  ## 0.5.0
168
160
 
169
161
  No changes, version bump only.
@@ -174,19 +166,14 @@ No changes, version bump only.
174
166
 
175
167
  - [80f1ba8](https://github.com/alloy-framework/alloy/commit/80f1ba88470960ce57487b644ae3c3f37f9c4690) Indent source files with 4 spaces as Anders intended.
176
168
 
177
-
178
169
  ## 0.3.0
179
170
 
180
171
  ### Features
181
172
 
182
173
  - [#38](https://github.com/alloy-framework/alloy/pull/38) Indent source files with 4 spaces as Anders intended.
183
174
 
184
-
185
-
186
-
187
175
  ## 0.2.0
188
176
 
189
177
  ### Bug Fixes
190
178
 
191
179
  - [#31](https://github.com/alloy-framework/alloy/pull/31) Update license to MIT
192
-
@@ -3,7 +3,7 @@ import { CSharpSymbol } from "../../symbols/csharp.js";
3
3
  export interface AccessExpressionProps {
4
4
  children: Children;
5
5
  }
6
- export declare function AccessExpression(props: AccessExpressionProps): string | number | boolean | void | import("@alloy-js/core").RenderableObject | import("@alloy-js/core").RefkeyableObject | (() => Children) | import("@vue/reactivity").Ref<any, any> | import("@alloy-js/core").CustomContext | import("@alloy-js/core").IndentIntrinsicElement | import("@alloy-js/core").IndentIfBreakIntrinsicElement | import("@alloy-js/core").BrIntrinsicElement | import("@alloy-js/core").LineIntrinsicElement | import("@alloy-js/core").HbrIntrinsicElement | import("@alloy-js/core").HardlineIntrinsicElement | import("@alloy-js/core").SbrIntrinsicElement | import("@alloy-js/core").SoftlineIntrinsicElement | import("@alloy-js/core").GroupIntrinsicElement | import("@alloy-js/core").AlignIntrinsicElement | import("@alloy-js/core").FillIntrinsicElement | import("@alloy-js/core").BreakParentIntrinsicElement | import("@alloy-js/core").LineSuffixIntrinsicElement | import("@alloy-js/core").LineSuffixBoundaryIntrinsicElement | import("@alloy-js/core").DedentIntrinsicElement | import("@alloy-js/core").LiterallineIntrinsicElement | import("@alloy-js/core").LbrIntrinsicElement | import("@alloy-js/core").DedentToRootIntrinsicElement | import("@alloy-js/core").MarkAsRootIntrinsicElement | import("@alloy-js/core").IfBreakIntrinsicElement | Children[] | import("@vue/reactivity").ComputedRef<Children> | null;
6
+ export declare function AccessExpression(props: AccessExpressionProps): Children;
7
7
  export declare namespace AccessExpression {
8
8
  var Part: (props: AccessExpressionPartProps) => void;
9
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"access-expression.d.ts","sourceRoot":"","sources":["../../../../src/components/access-expression/access-expression.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAMR,UAAU,EAGX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAWvD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,6yCA6B5D;yBA7Be,gBAAgB;sBA0GS,yBAAyB;;AA1DlE,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,EAAE,CAAC;IAE5B;;OAEG;IACH,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;IAEtB;;;OAGG;IACH,MAAM,CAAC,EAAE,UAAU,CAAC;IAEpB;;OAEG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,KAAK,CAAC,EAAE,QAAQ,CAAC;IAEjB;;;OAGG;IACH,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC;IAEzB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB"}
1
+ {"version":3,"file":"access-expression.d.ts","sourceRoot":"","sources":["../../../../src/components/access-expression/access-expression.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAMR,UAAU,EAGX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAWvD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,YA6B5D;yBA7Be,gBAAgB;sBA0GS,yBAAyB;;AA1DlE,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,EAAE,CAAC;IAE5B;;OAEG;IACH,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;IAEtB;;;OAGG;IACH,MAAM,CAAC,EAAE,UAAU,CAAC;IAEpB;;OAEG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,KAAK,CAAC,EAAE,QAAQ,CAAC;IAEjB;;;OAGG;IACH,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC;IAEzB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"member.d.ts","sourceRoot":"","sources":["../../../../src/components/enum/member.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiC,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAMhF,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAGD,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,qCAuBhD"}
1
+ {"version":3,"file":"member.d.ts","sourceRoot":"","sources":["../../../../src/components/enum/member.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,OAAO,EACP,MAAM,EACP,MAAM,gBAAgB,CAAC;AAMxB,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAGD,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,qCA4BhD"}
@@ -1,5 +1,5 @@
1
1
  import { createComponent as _$createComponent } from "@alloy-js/core/jsx-runtime";
2
- import { MemberDeclaration, MemberName } from "@alloy-js/core";
2
+ import { createSymbol, MemberDeclaration, MemberName } from "@alloy-js/core";
3
3
  import { useCSharpNamePolicy } from "../../name-policy.js";
4
4
  import { useNamedTypeScope } from "../../scopes/contexts.js";
5
5
  import { CSharpSymbol } from "../../symbols/csharp.js";
@@ -16,7 +16,7 @@ export function EnumMember(props) {
16
16
  if (symbol.typeKind !== "enum") {
17
17
  throw new Error("EnumMember must be used within an EnumDeclaration.");
18
18
  }
19
- const thisEnumValueSymbol = new CSharpSymbol(props.name, symbol.members, {
19
+ const thisEnumValueSymbol = createSymbol(CSharpSymbol, props.name, symbol.members, {
20
20
  refkeys: props.refkey,
21
21
  namePolicy: useCSharpNamePolicy().for("enum-member")
22
22
  });
@@ -1 +1 @@
1
- {"version":3,"names":["MemberDeclaration","MemberName","useCSharpNamePolicy","useNamedTypeScope","CSharpSymbol","EnumMember","props","scope","Error","symbol","ownerSymbol","typeKind","thisEnumValueSymbol","name","members","refkeys","refkey","namePolicy","for","_$createComponent","children"],"sources":["../../../../src/components/enum/member.tsx"],"sourcesContent":[null],"mappings":";AAAA,SAASA,iBAAiB,EAAEC,UAAU,QAAyB,gBAAgB;AAC/E,SAASC,mBAAmB,QAAQ,sBAAsB;AAC1D,SAASC,iBAAiB,QAAQ,0BAA0B;AAC5D,SAASC,YAAY,QAAQ,yBAAyB;;AAEtD;;AAMA;AACA,OAAO,SAASC,UAAUA,CAACC,KAAsB,EAAE;EACjD,MAAMC,KAAK,GAAGJ,iBAAiB,CAAC,CAAC;EAEjC,IAAI,CAACI,KAAK,EAAE;IACV,MAAM,IAAIC,KAAK,CAAC,oDAAoD,CAAC;EACvE;EAEA,MAAMC,MAAM,GAAGF,KAAK,CAACG,WAAW;EAEhC,IAAID,MAAM,CAACE,QAAQ,KAAK,MAAM,EAAE;IAC9B,MAAM,IAAIH,KAAK,CAAC,oDAAoD,CAAC;EACvE;EAEA,MAAMI,mBAAmB,GAAG,IAAIR,YAAY,CAACE,KAAK,CAACO,IAAI,EAAEJ,MAAM,CAACK,OAAO,EAAE;IACvEC,OAAO,EAAET,KAAK,CAACU,MAAM;IACrBC,UAAU,EAAEf,mBAAmB,CAAC,CAAC,CAACgB,GAAG,CAAC,aAAa;EACrD,CAAC,CAAC;EAEF,OAAAC,iBAAA,CACGnB,iBAAiB;IAACS,MAAM,EAAEG,mBAAmB;IAAA,IAAAQ,SAAA;MAAA,OAAAD,iBAAA,CAC3ClB,UAAU;IAAA;EAAA;AAGjB","ignoreList":[]}
1
+ {"version":3,"names":["createSymbol","MemberDeclaration","MemberName","useCSharpNamePolicy","useNamedTypeScope","CSharpSymbol","EnumMember","props","scope","Error","symbol","ownerSymbol","typeKind","thisEnumValueSymbol","name","members","refkeys","refkey","namePolicy","for","_$createComponent","children"],"sources":["../../../../src/components/enum/member.tsx"],"sourcesContent":[null],"mappings":";AAAA,SACEA,YAAY,EACZC,iBAAiB,EACjBC,UAAU,QAGL,gBAAgB;AACvB,SAASC,mBAAmB,QAAQ,sBAAsB;AAC1D,SAASC,iBAAiB,QAAQ,0BAA0B;AAC5D,SAASC,YAAY,QAAQ,yBAAyB;;AAEtD;;AAMA;AACA,OAAO,SAASC,UAAUA,CAACC,KAAsB,EAAE;EACjD,MAAMC,KAAK,GAAGJ,iBAAiB,CAAC,CAAC;EAEjC,IAAI,CAACI,KAAK,EAAE;IACV,MAAM,IAAIC,KAAK,CAAC,oDAAoD,CAAC;EACvE;EAEA,MAAMC,MAAM,GAAGF,KAAK,CAACG,WAAW;EAEhC,IAAID,MAAM,CAACE,QAAQ,KAAK,MAAM,EAAE;IAC9B,MAAM,IAAIH,KAAK,CAAC,oDAAoD,CAAC;EACvE;EAEA,MAAMI,mBAAmB,GAAGb,YAAY,CACtCK,YAAY,EACZE,KAAK,CAACO,IAAI,EACVJ,MAAM,CAACK,OAAO,EACd;IACEC,OAAO,EAAET,KAAK,CAACU,MAAM;IACrBC,UAAU,EAAEf,mBAAmB,CAAC,CAAC,CAACgB,GAAG,CAAC,aAAa;EACrD,CACF,CAAC;EAED,OAAAC,iBAAA,CACGnB,iBAAiB;IAACS,MAAM,EAAEG,mBAAmB;IAAA,IAAAQ,SAAA;MAAA,OAAAD,iBAAA,CAC3ClB,UAAU;IAAA;EAAA;AAGjB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"lexical-scope.d.ts","sourceRoot":"","sources":["../../../src/components/lexical-scope.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAS,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAIhF,MAAM,WAAW,+BAAgC,SAAQ,mBAAmB;CAAG;AAC/E,MAAM,WAAW,8BAA+B,SAAQ,kBAAkB;CAAG;AAE7E,MAAM,MAAM,iBAAiB,GACzB,+BAA+B,GAC/B,8BAA8B,CAAC;AAEnC,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,qCAiBpD"}
1
+ {"version":3,"file":"lexical-scope.d.ts","sourceRoot":"","sources":["../../../src/components/lexical-scope.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAClB,mBAAmB,EAEpB,MAAM,gBAAgB,CAAC;AAIxB,MAAM,WAAW,+BAAgC,SAAQ,mBAAmB;CAAG;AAC/E,MAAM,WAAW,8BAA+B,SAAQ,kBAAkB;CAAG;AAE7E,MAAM,MAAM,iBAAiB,GACzB,+BAA+B,GAC/B,8BAA8B,CAAC;AAEnC,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,qCAuBpD"}
@@ -1,5 +1,5 @@
1
1
  import { createComponent as _$createComponent } from "@alloy-js/core/jsx-runtime";
2
- import { Scope } from "@alloy-js/core";
2
+ import { Scope, createScope } from "@alloy-js/core";
3
3
  import { useCSharpScope } from "../scopes/contexts.js";
4
4
  import { CSharpLexicalScope } from "../scopes/lexical.js";
5
5
  export function LexicalScope(props) {
@@ -11,8 +11,9 @@ export function LexicalScope(props) {
11
11
  scope = props.value;
12
12
  } else {
13
13
  const parentScope = useCSharpScope();
14
- scope = new CSharpLexicalScope(props.name ?? "lexical scope", parentScope, {
15
- ...props
14
+ scope = createScope(CSharpLexicalScope, props.name ?? "lexical scope", parentScope, {
15
+ ...props,
16
+ binder: parentScope?.binder
16
17
  });
17
18
  }
18
19
  return _$createComponent(Scope, {
@@ -1 +1 @@
1
- {"version":3,"names":["Scope","useCSharpScope","CSharpLexicalScope","LexicalScope","props","scope","value","Error","parentScope","name","_$createComponent","children"],"sources":["../../../src/components/lexical-scope.tsx"],"sourcesContent":[null],"mappings":";AAAA,SAASA,KAAK,QAAiD,gBAAgB;AAC/E,SAASC,cAAc,QAAQ,uBAAuB;AACtD,SAASC,kBAAkB,QAAQ,sBAAsB;AASzD,OAAO,SAASC,YAAYA,CAACC,KAAwB,EAAE;EACrD,IAAIC,KAAK;EACT,IAAI,OAAO,IAAID,KAAK,EAAE;IACpB,IAAI,EAAEA,KAAK,CAACE,KAAK,YAAYJ,kBAAkB,CAAC,EAAE;MAChD,MAAM,IAAIK,KAAK,CACb,0DACF,CAAC;IACH;IACAF,KAAK,GAAGD,KAAK,CAACE,KAAK;EACrB,CAAC,MAAM;IACL,MAAME,WAAW,GAAGP,cAAc,CAAC,CAAC;IACpCI,KAAK,GAAG,IAAIH,kBAAkB,CAACE,KAAK,CAACK,IAAI,IAAI,eAAe,EAAED,WAAW,EAAE;MACzE,GAAGJ;IACL,CAAC,CAAC;EACJ;EAEA,OAAAM,iBAAA,CAAQV,KAAK;IAACM,KAAK,EAAED,KAAK;IAAA,IAAAM,SAAA;MAAA,OAAGP,KAAK,CAACO,QAAQ;IAAA;EAAA;AAC7C","ignoreList":[]}
1
+ {"version":3,"names":["Scope","createScope","useCSharpScope","CSharpLexicalScope","LexicalScope","props","scope","value","Error","parentScope","name","binder","_$createComponent","children"],"sources":["../../../src/components/lexical-scope.tsx"],"sourcesContent":[null],"mappings":";AAAA,SACEA,KAAK,EAGLC,WAAW,QACN,gBAAgB;AACvB,SAASC,cAAc,QAAQ,uBAAuB;AACtD,SAASC,kBAAkB,QAAQ,sBAAsB;AASzD,OAAO,SAASC,YAAYA,CAACC,KAAwB,EAAE;EACrD,IAAIC,KAAK;EACT,IAAI,OAAO,IAAID,KAAK,EAAE;IACpB,IAAI,EAAEA,KAAK,CAACE,KAAK,YAAYJ,kBAAkB,CAAC,EAAE;MAChD,MAAM,IAAIK,KAAK,CACb,0DACF,CAAC;IACH;IACAF,KAAK,GAAGD,KAAK,CAACE,KAAK;EACrB,CAAC,MAAM;IACL,MAAME,WAAW,GAAGP,cAAc,CAAC,CAAC;IACpCI,KAAK,GAAGL,WAAW,CACjBE,kBAAkB,EAClBE,KAAK,CAACK,IAAI,IAAI,eAAe,EAC7BD,WAAW,EACX;MACE,GAAGJ,KAAK;MACRM,MAAM,EAAEF,WAAW,EAAEE;IACvB,CACF,CAAC;EACH;EAEA,OAAAC,iBAAA,CAAQZ,KAAK;IAACO,KAAK,EAAED,KAAK;IAAA,IAAAO,SAAA;MAAA,OAAGR,KAAK,CAACQ,QAAQ;IAAA;EAAA;AAC7C","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"method-scope.d.ts","sourceRoot":"","sources":["../../../src/components/method-scope.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAS,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAIhF,MAAM,WAAW,8BAA+B,SAAQ,mBAAmB;CAAG;AAC9E,MAAM,WAAW,6BAA8B,SAAQ,kBAAkB;CAAG;AAE5E,MAAM,MAAM,gBAAgB,GACxB,8BAA8B,GAC9B,6BAA6B,CAAC;AAElC,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,qCAelD"}
1
+ {"version":3,"file":"method-scope.d.ts","sourceRoot":"","sources":["../../../src/components/method-scope.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAClB,mBAAmB,EAEpB,MAAM,gBAAgB,CAAC;AAIxB,MAAM,WAAW,8BAA+B,SAAQ,mBAAmB;CAAG;AAC9E,MAAM,WAAW,6BAA8B,SAAQ,kBAAkB;CAAG;AAE5E,MAAM,MAAM,gBAAgB,GACxB,8BAA8B,GAC9B,6BAA6B,CAAC;AAElC,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,qCAqBlD"}
@@ -1,5 +1,5 @@
1
1
  import { createComponent as _$createComponent } from "@alloy-js/core/jsx-runtime";
2
- import { Scope } from "@alloy-js/core";
2
+ import { Scope, createScope } from "@alloy-js/core";
3
3
  import { useCSharpScope } from "../scopes/contexts.js";
4
4
  import { CSharpMethodScope } from "../scopes/method.js";
5
5
  export function MethodScope(props) {
@@ -11,8 +11,9 @@ export function MethodScope(props) {
11
11
  scope = props.value;
12
12
  } else {
13
13
  const parentScope = useCSharpScope();
14
- scope = new CSharpMethodScope(props.name ?? "method scope", parentScope, {
15
- ...props
14
+ scope = createScope(CSharpMethodScope, props.name ?? "method scope", parentScope, {
15
+ ...props,
16
+ binder: parentScope?.binder
16
17
  });
17
18
  }
18
19
  return _$createComponent(Scope, {
@@ -1 +1 @@
1
- {"version":3,"names":["Scope","useCSharpScope","CSharpMethodScope","MethodScope","props","scope","value","Error","parentScope","name","_$createComponent","children"],"sources":["../../../src/components/method-scope.tsx"],"sourcesContent":[null],"mappings":";AAAA,SAASA,KAAK,QAAiD,gBAAgB;AAC/E,SAASC,cAAc,QAAQ,uBAAuB;AACtD,SAASC,iBAAiB,QAAQ,qBAAqB;AASvD,OAAO,SAASC,WAAWA,CAACC,KAAuB,EAAE;EACnD,IAAIC,KAAK;EACT,IAAI,OAAO,IAAID,KAAK,EAAE;IACpB,IAAI,EAAEA,KAAK,CAACE,KAAK,YAAYJ,iBAAiB,CAAC,EAAE;MAC/C,MAAM,IAAIK,KAAK,CAAC,wDAAwD,CAAC;IAC3E;IACAF,KAAK,GAAGD,KAAK,CAACE,KAAK;EACrB,CAAC,MAAM;IACL,MAAME,WAAW,GAAGP,cAAc,CAAC,CAAC;IACpCI,KAAK,GAAG,IAAIH,iBAAiB,CAACE,KAAK,CAACK,IAAI,IAAI,cAAc,EAAED,WAAW,EAAE;MACvE,GAAGJ;IACL,CAAC,CAAC;EACJ;EAEA,OAAAM,iBAAA,CAAQV,KAAK;IAACM,KAAK,EAAED,KAAK;IAAA,IAAAM,SAAA;MAAA,OAAGP,KAAK,CAACO,QAAQ;IAAA;EAAA;AAC7C","ignoreList":[]}
1
+ {"version":3,"names":["Scope","createScope","useCSharpScope","CSharpMethodScope","MethodScope","props","scope","value","Error","parentScope","name","binder","_$createComponent","children"],"sources":["../../../src/components/method-scope.tsx"],"sourcesContent":[null],"mappings":";AAAA,SACEA,KAAK,EAGLC,WAAW,QACN,gBAAgB;AACvB,SAASC,cAAc,QAAQ,uBAAuB;AACtD,SAASC,iBAAiB,QAAQ,qBAAqB;AASvD,OAAO,SAASC,WAAWA,CAACC,KAAuB,EAAE;EACnD,IAAIC,KAAK;EACT,IAAI,OAAO,IAAID,KAAK,EAAE;IACpB,IAAI,EAAEA,KAAK,CAACE,KAAK,YAAYJ,iBAAiB,CAAC,EAAE;MAC/C,MAAM,IAAIK,KAAK,CAAC,wDAAwD,CAAC;IAC3E;IACAF,KAAK,GAAGD,KAAK,CAACE,KAAK;EACrB,CAAC,MAAM;IACL,MAAME,WAAW,GAAGP,cAAc,CAAC,CAAC;IACpCI,KAAK,GAAGL,WAAW,CACjBE,iBAAiB,EACjBE,KAAK,CAACK,IAAI,IAAI,cAAc,EAC5BD,WAAW,EACX;MACE,GAAGJ,KAAK;MACRM,MAAM,EAAEF,WAAW,EAAEE;IACvB,CACF,CAAC;EACH;EAEA,OAAAC,iBAAA,CAAQZ,KAAK;IAACO,KAAK,EAAED,KAAK;IAAA,IAAAO,SAAA;MAAA,OAAGR,KAAK,CAACQ,QAAQ;IAAA;EAAA;AAC7C","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"source-file.d.ts","sourceRoot":"","sources":["../../../../src/components/source-file/source-file.tsx"],"names":[],"mappings":"AAKA,OAAO,EAEL,QAAQ,EAOT,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,mBAAmB,EAEpB,MAAM,kCAAkC,CAAC;AAM1C;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,mBAAmB;IAC1D,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IAEb,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAEjB,MAAM,CAAC,EAAE,QAAQ,CAAC;IAElB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,2GAA2G;AAC3G,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,YAmEhD"}
1
+ {"version":3,"file":"source-file.d.ts","sourceRoot":"","sources":["../../../../src/components/source-file/source-file.tsx"],"names":[],"mappings":"AAKA,OAAO,EAEL,QAAQ,EAQT,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,mBAAmB,EAEpB,MAAM,kCAAkC,CAAC;AAM1C;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,mBAAmB;IAC1D,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IAEb,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAEjB,MAAM,CAAC,EAAE,QAAQ,CAAC;IAElB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,2GAA2G;AAC3G,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,YA2EhD"}
@@ -4,7 +4,7 @@ import { NamespaceScopes } from "#components/namespace-scopes.js";
4
4
  import { NamespaceName } from "#components/namespace/namespace-name.js";
5
5
  import { Reference } from "#components/Reference.js";
6
6
  import { Usings } from "#components/using/using.js";
7
- import { Block, computed, SourceFile as CoreSourceFile, List, Scope, Show, useBinder } from "@alloy-js/core";
7
+ import { Block, computed, SourceFile as CoreSourceFile, createScope, List, Scope, Show, useBinder } from "@alloy-js/core";
8
8
  import { useCsharpFormatOptions } from "../../contexts/format-options.js";
9
9
  import { getGlobalNamespace } from "../../contexts/global-namespace.js";
10
10
  import { useNamespaceContext } from "../../contexts/namespace.js";
@@ -16,9 +16,12 @@ import { CSharpSourceFileScope } from "../../scopes/source-file.js";
16
16
 
17
17
  /** A C# source file exists within the context of a namespace contains using statements and declarations */
18
18
  export function SourceFile(props) {
19
- const sourceFileScope = new CSharpSourceFileScope(props.path);
19
+ const binder = useBinder();
20
+ const sourceFileScope = createScope(CSharpSourceFileScope, props.path, undefined, {
21
+ binder
22
+ });
20
23
  const nsContext = useNamespaceContext();
21
- const globalNs = getGlobalNamespace(useBinder());
24
+ const globalNs = getGlobalNamespace(binder);
22
25
  const nsSymbol = nsContext ? nsContext.symbol : globalNs;
23
26
  const usings = computed(() => {
24
27
  return Array.from(sourceFileScope.usings).concat(props.using ?? []);
@@ -1 +1 @@
1
- {"version":3,"names":["DocComment","NamespaceScopes","NamespaceName","Reference","Usings","Block","computed","SourceFile","CoreSourceFile","List","Scope","Show","useBinder","useCsharpFormatOptions","getGlobalNamespace","useNamespaceContext","CSharpSourceFileScope","props","sourceFileScope","path","nsContext","globalNs","nsSymbol","symbol","usings","Array","from","concat","using","content","_$createComponent","children","opts","printWidth","tabWidth","useTabs","header","headerComment","SourceFileHeader","undefined","_$mergeProps","filetype","reference","value","_$memo","size","length","namespaces","_$createIntrinsic","hasBlockNamespace","when"],"sources":["../../../../src/components/source-file/source-file.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["DocComment","NamespaceScopes","NamespaceName","Reference","Usings","Block","computed","SourceFile","CoreSourceFile","createScope","List","Scope","Show","useBinder","useCsharpFormatOptions","getGlobalNamespace","useNamespaceContext","CSharpSourceFileScope","props","binder","sourceFileScope","path","undefined","nsContext","globalNs","nsSymbol","symbol","usings","Array","from","concat","using","content","_$createComponent","children","opts","printWidth","tabWidth","useTabs","header","headerComment","SourceFileHeader","_$mergeProps","filetype","reference","value","_$memo","size","length","namespaces","_$createIntrinsic","hasBlockNamespace","when"],"sources":["../../../../src/components/source-file/source-file.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"global-namespace.d.ts","sourceRoot":"","sources":["../../../src/contexts/global-namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAa,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,wBAAgB,kBAAkB,oBAGjC;AAOD,wBAAgB,oBAAoB,SAInC;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,mBAgB5D"}
1
+ {"version":3,"file":"global-namespace.d.ts","sourceRoot":"","sources":["../../../src/contexts/global-namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAA2B,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,wBAAgB,kBAAkB,oBAGjC;AAYD,wBAAgB,oBAAoB,SAInC;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,mBAgB5D"}
@@ -1,15 +1,15 @@
1
- import { useBinder } from "@alloy-js/core";
1
+ import { createSymbol, useBinder } from "@alloy-js/core";
2
2
  import { NamespaceSymbol } from "../symbols/namespace.js";
3
3
  export function useGlobalNamespace() {
4
4
  const binder = useBinder();
5
5
  return getGlobalNamespace(binder);
6
6
  }
7
7
  const globalNamespaces = new WeakMap();
8
- let defaultGlobalNamespace = new NamespaceSymbol("global", undefined, {
8
+ let defaultGlobalNamespace = createSymbol(NamespaceSymbol, "global", undefined, {
9
9
  isGlobal: true
10
10
  });
11
11
  export function resetGlobalNamespace() {
12
- defaultGlobalNamespace = new NamespaceSymbol("global", undefined, {
12
+ defaultGlobalNamespace = createSymbol(NamespaceSymbol, "global", undefined, {
13
13
  isGlobal: true
14
14
  });
15
15
  }
@@ -19,7 +19,7 @@ export function getGlobalNamespace(binder) {
19
19
  }
20
20
  let namespace = globalNamespaces.get(binder);
21
21
  if (!namespace) {
22
- namespace = new NamespaceSymbol("global", undefined, {
22
+ namespace = createSymbol(NamespaceSymbol, "global", undefined, {
23
23
  binder,
24
24
  isGlobal: true
25
25
  });
@@ -1 +1 @@
1
- {"version":3,"names":["useBinder","NamespaceSymbol","useGlobalNamespace","binder","getGlobalNamespace","globalNamespaces","WeakMap","defaultGlobalNamespace","undefined","isGlobal","resetGlobalNamespace","namespace","get","set"],"sources":["../../../src/contexts/global-namespace.ts"],"sourcesContent":[null],"mappings":"AAAA,SAAiBA,SAAS,QAAQ,gBAAgB;AAClD,SAASC,eAAe,QAAQ,yBAAyB;AAEzD,OAAO,SAASC,kBAAkBA,CAAA,EAAG;EACnC,MAAMC,MAAM,GAAGH,SAAS,CAAC,CAAC;EAC1B,OAAOI,kBAAkB,CAACD,MAAM,CAAC;AACnC;AAEA,MAAME,gBAAgB,GAAG,IAAIC,OAAO,CAA0B,CAAC;AAC/D,IAAIC,sBAAsB,GAAG,IAAIN,eAAe,CAAC,QAAQ,EAAEO,SAAS,EAAE;EACpEC,QAAQ,EAAE;AACZ,CAAC,CAAC;AAEF,OAAO,SAASC,oBAAoBA,CAAA,EAAG;EACrCH,sBAAsB,GAAG,IAAIN,eAAe,CAAC,QAAQ,EAAEO,SAAS,EAAE;IAChEC,QAAQ,EAAE;EACZ,CAAC,CAAC;AACJ;AAEA,OAAO,SAASL,kBAAkBA,CAACD,MAA0B,EAAE;EAC7D,IAAI,CAACA,MAAM,EAAE;IACX,OAAOI,sBAAsB;EAC/B;EAEA,IAAII,SAAS,GAAGN,gBAAgB,CAACO,GAAG,CAACT,MAAM,CAAC;EAE5C,IAAI,CAACQ,SAAS,EAAE;IACdA,SAAS,GAAG,IAAIV,eAAe,CAAC,QAAQ,EAAEO,SAAS,EAAE;MACnDL,MAAM;MACNM,QAAQ,EAAE;IACZ,CAAC,CAAC;IACFJ,gBAAgB,CAACQ,GAAG,CAACV,MAAM,EAAEQ,SAAS,CAAC;EACzC;EAEA,OAAOA,SAAS;AAClB","ignoreList":[]}
1
+ {"version":3,"names":["createSymbol","useBinder","NamespaceSymbol","useGlobalNamespace","binder","getGlobalNamespace","globalNamespaces","WeakMap","defaultGlobalNamespace","undefined","isGlobal","resetGlobalNamespace","namespace","get","set"],"sources":["../../../src/contexts/global-namespace.ts"],"sourcesContent":[null],"mappings":"AAAA,SAAiBA,YAAY,EAAEC,SAAS,QAAQ,gBAAgB;AAChE,SAASC,eAAe,QAAQ,yBAAyB;AAEzD,OAAO,SAASC,kBAAkBA,CAAA,EAAG;EACnC,MAAMC,MAAM,GAAGH,SAAS,CAAC,CAAC;EAC1B,OAAOI,kBAAkB,CAACD,MAAM,CAAC;AACnC;AAEA,MAAME,gBAAgB,GAAG,IAAIC,OAAO,CAA0B,CAAC;AAC/D,IAAIC,sBAAsB,GAAGR,YAAY,CACvCE,eAAe,EACf,QAAQ,EACRO,SAAS,EACT;EACEC,QAAQ,EAAE;AACZ,CACF,CAAC;AAED,OAAO,SAASC,oBAAoBA,CAAA,EAAG;EACrCH,sBAAsB,GAAGR,YAAY,CAACE,eAAe,EAAE,QAAQ,EAAEO,SAAS,EAAE;IAC1EC,QAAQ,EAAE;EACZ,CAAC,CAAC;AACJ;AAEA,OAAO,SAASL,kBAAkBA,CAACD,MAA0B,EAAE;EAC7D,IAAI,CAACA,MAAM,EAAE;IACX,OAAOI,sBAAsB;EAC/B;EAEA,IAAII,SAAS,GAAGN,gBAAgB,CAACO,GAAG,CAACT,MAAM,CAAC;EAE5C,IAAI,CAACQ,SAAS,EAAE;IACdA,SAAS,GAAGZ,YAAY,CAACE,eAAe,EAAE,QAAQ,EAAEO,SAAS,EAAE;MAC7DL,MAAM;MACNM,QAAQ,EAAE;IACZ,CAAC,CAAC;IACFJ,gBAAgB,CAACQ,GAAG,CAACV,MAAM,EAAEQ,SAAS,CAAC;EACzC;EAEA,OAAOA,SAAS;AAClB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"create-library.d.ts","sourceRoot":"","sources":["../../src/create-library.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-library.d.ts","sourceRoot":"","sources":["../../src/create-library.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { namekey, refkey, REFKEYABLE, TO_SYMBOL, useBinder } from "@alloy-js/core";
1
+ import { createSymbol, namekey, refkey, REFKEYABLE, TO_SYMBOL, useBinder } from "@alloy-js/core";
2
2
  import { getGlobalNamespace } from "./contexts/global-namespace.js";
3
3
  import { MethodSymbol } from "./index.js";
4
4
  import { CSharpSymbol } from "./symbols/csharp.js";
@@ -18,7 +18,7 @@ export function createLibrary(rootNs, props) {
18
18
  if (ownerSymbol.members.symbolNames.has(name)) {
19
19
  ownerSymbol = ownerSymbol.members.symbolNames.get(name);
20
20
  } else {
21
- ownerSymbol = new NamespaceSymbol(namekey(name), ownerSymbol, {
21
+ ownerSymbol = createSymbol(NamespaceSymbol, namekey(name), ownerSymbol, {
22
22
  binder,
23
23
  refkeys: refkey()
24
24
  });
@@ -77,7 +77,7 @@ function createSymbolFromDescriptor(name, binder, descriptor, context, lazyMembe
77
77
  if (ownerSymbol.members.symbolNames.has(name)) {
78
78
  return ownerSymbol.members.symbolNames.get(name);
79
79
  }
80
- return new NamespaceSymbol(namekey(name), ownerSymbol, {
80
+ return createSymbol(NamespaceSymbol, namekey(name), ownerSymbol, {
81
81
  binder,
82
82
  refkeys: refkey(),
83
83
  lazyMemberInitializer
@@ -87,19 +87,19 @@ function createSymbolFromDescriptor(name, binder, descriptor, context, lazyMembe
87
87
  case "interface":
88
88
  case "struct":
89
89
  case "record":
90
- return new NamedTypeSymbol(namekey(name), ownerSymbol.members, descriptor.kind, {
90
+ return createSymbol(NamedTypeSymbol, namekey(name), ownerSymbol.members, descriptor.kind, {
91
91
  binder,
92
92
  refkeys: refkey(),
93
93
  lazyMemberInitializer
94
94
  });
95
95
  case "method":
96
- return new MethodSymbol(namekey(name), ownerSymbol.members, descriptor.methodKind, {
96
+ return createSymbol(MethodSymbol, namekey(name), ownerSymbol.members, descriptor.methodKind, {
97
97
  binder,
98
98
  refkeys: refkey()
99
99
  });
100
100
  case "field":
101
101
  case "property":
102
- return new CSharpSymbol(namekey(name), ownerSymbol.members, {
102
+ return createSymbol(CSharpSymbol, namekey(name), ownerSymbol.members, {
103
103
  binder,
104
104
  refkeys: refkey(),
105
105
  type: descriptor.type === undefined ? undefined : typeof descriptor.type === "function" ? descriptor.type()[TO_SYMBOL]() : descriptor.type[TO_SYMBOL](),
@@ -107,7 +107,7 @@ function createSymbolFromDescriptor(name, binder, descriptor, context, lazyMembe
107
107
  lazyMemberInitializer
108
108
  });
109
109
  case "generic":
110
- return new CSharpSymbol(namekey(name), ownerSymbol.members, {
110
+ return createSymbol(CSharpSymbol, namekey(name), ownerSymbol.members, {
111
111
  binder,
112
112
  refkeys: refkey()
113
113
  });
@@ -1 +1 @@
1
- {"version":3,"names":["namekey","refkey","REFKEYABLE","TO_SYMBOL","useBinder","getGlobalNamespace","MethodSymbol","CSharpSymbol","NamedTypeSymbol","NamespaceSymbol","createLibrary","rootNs","props","ownerSymbolPerBinder","WeakMap","namespaceNames","split","createSymbolEntry","at","kind","members","ownerSymbol","binder","mapGet","name","slice","symbolNames","has","get","refkeys","descriptor","context","symbols","getSymbol","createSymbolFromDescriptor","initializeMembers","newContext","key","Object","keys","obj","memberName","memberDesc","entries","lazyMemberInitializer","methodKind","type","undefined","isNullable","defaultsPerMap","map","init","value","set"],"sources":["../../src/create-library.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createSymbol","namekey","refkey","REFKEYABLE","TO_SYMBOL","useBinder","getGlobalNamespace","MethodSymbol","CSharpSymbol","NamedTypeSymbol","NamespaceSymbol","createLibrary","rootNs","props","ownerSymbolPerBinder","WeakMap","namespaceNames","split","createSymbolEntry","at","kind","members","ownerSymbol","binder","mapGet","name","slice","symbolNames","has","get","refkeys","descriptor","context","symbols","getSymbol","createSymbolFromDescriptor","initializeMembers","newContext","key","Object","keys","obj","memberName","memberDesc","entries","lazyMemberInitializer","methodKind","type","undefined","isNullable","defaultsPerMap","map","init","value","set"],"sources":["../../src/create-library.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -6,5 +6,6 @@ export declare class CSharpScope extends OutputScope {
6
6
  constructor(name: string, parent: CSharpScope | undefined, options?: OutputScopeOptions);
7
7
  get enclosingNamespace(): NamespaceSymbol | undefined;
8
8
  get ownerSymbol(): CSharpSymbol | undefined;
9
+ get debugInfo(): Record<string, unknown>;
9
10
  }
10
11
  //# sourceMappingURL=csharp.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"csharp.d.ts","sourceRoot":"","sources":["../../../src/scopes/csharp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,qBAAa,WAAY,SAAQ,WAAW;;gBAExC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,OAAO,CAAC,EAAE,kBAAkB;IAO9B,IAAI,kBAAkB,gCAErB;IAED,IAAI,WAAW,IAAI,YAAY,GAAG,SAAS,CAE1C;CACF"}
1
+ {"version":3,"file":"csharp.d.ts","sourceRoot":"","sources":["../../../src/scopes/csharp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,qBAAa,WAAY,SAAQ,WAAW;;gBAExC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,OAAO,CAAC,EAAE,kBAAkB;IAO9B,IAAI,kBAAkB,gCAErB;IAED,IAAI,WAAW,IAAI,YAAY,GAAG,SAAS,CAE1C;IAED,IAAa,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAShD;CACF"}
@@ -11,5 +11,15 @@ export class CSharpScope extends OutputScope {
11
11
  get ownerSymbol() {
12
12
  return super.ownerSymbol;
13
13
  }
14
+ get debugInfo() {
15
+ const info = super.debugInfo;
16
+ if (this.enclosingNamespace) {
17
+ return {
18
+ ...info,
19
+ enclosingNamespace: this.enclosingNamespace.name
20
+ };
21
+ }
22
+ return info;
23
+ }
14
24
  }
15
25
  //# sourceMappingURL=csharp.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["OutputScope","CSharpScope","constructor","name","parent","options","namespaceSymbol","enclosingNamespace","ownerSymbol"],"sources":["../../../src/scopes/csharp.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAW,QAA4B,gBAAgB;AAIhE,OAAO,MAAMC,WAAW,SAASD,WAAW,CAAC;EAC3CE,WAAWA,CACTC,IAAY,EACZC,MAA+B,EAC/BC,OAA4B,EAC5B;IACA,KAAK,CAACF,IAAI,EAAEC,MAAM,EAAEC,OAAO,CAAC;IAC5B,IAAI,CAAC,CAACC,eAAe,GAAGF,MAAM,EAAEG,kBAAkB;EACpD;EAEA,CAACD,eAAe;EAChB,IAAIC,kBAAkBA,CAAA,EAAG;IACvB,OAAO,IAAI,CAAC,CAACD,eAAe;EAC9B;EAEA,IAAIE,WAAWA,CAAA,EAA6B;IAC1C,OAAO,KAAK,CAACA,WAAW;EAC1B;AACF","ignoreList":[]}
1
+ {"version":3,"names":["OutputScope","CSharpScope","constructor","name","parent","options","namespaceSymbol","enclosingNamespace","ownerSymbol","debugInfo","info"],"sources":["../../../src/scopes/csharp.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAW,QAA4B,gBAAgB;AAIhE,OAAO,MAAMC,WAAW,SAASD,WAAW,CAAC;EAC3CE,WAAWA,CACTC,IAAY,EACZC,MAA+B,EAC/BC,OAA4B,EAC5B;IACA,KAAK,CAACF,IAAI,EAAEC,MAAM,EAAEC,OAAO,CAAC;IAC5B,IAAI,CAAC,CAACC,eAAe,GAAGF,MAAM,EAAEG,kBAAkB;EACpD;EAEA,CAACD,eAAe;EAChB,IAAIC,kBAAkBA,CAAA,EAAG;IACvB,OAAO,IAAI,CAAC,CAACD,eAAe;EAC9B;EAEA,IAAIE,WAAWA,CAAA,EAA6B;IAC1C,OAAO,KAAK,CAACA,WAAW;EAC1B;EAEA,IAAaC,SAASA,CAAA,EAA4B;IAChD,MAAMC,IAAI,GAAG,KAAK,CAACD,SAAS;IAC5B,IAAI,IAAI,CAACF,kBAAkB,EAAE;MAC3B,OAAO;QACL,GAAGG,IAAI;QACPH,kBAAkB,EAAE,IAAI,CAACA,kBAAkB,CAACJ;MAC9C,CAAC;IACH;IACA,OAAOO,IAAI;EACb;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"factories.d.ts","sourceRoot":"","sources":["../../../src/scopes/factories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAGvD,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,eAAe,EAC5B,OAAO,GAAE,kBAAuB,wBAcjC;AAED,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,eAAe,EAC5B,OAAO,GAAE,kBAAuB,oBAYjC;AACD,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,kBAAuB,qBAGjE"}
1
+ {"version":3,"file":"factories.d.ts","sourceRoot":"","sources":["../../../src/scopes/factories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAe,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAGvD,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,eAAe,EAC5B,OAAO,GAAE,kBAAuB,wBAcjC;AAED,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,eAAe,EAC5B,OAAO,GAAE,kBAAuB,oBAYjC;AACD,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,kBAAuB,qBAGjE"}
@@ -1,3 +1,4 @@
1
+ import { createScope } from "@alloy-js/core";
1
2
  import { CSharpClassScope } from "./class.js";
2
3
  import { useCSharpScope, useNamedTypeScope } from "./contexts.js";
3
4
  import { CSharpMethodScope } from "./method.js";
@@ -8,17 +9,17 @@ export function createNamedTypeScope(ownerSymbol, options = {}) {
8
9
  if (!(currentScope instanceof CSharpNamedTypeScope) && !(currentScope instanceof CSharpSourceFileScope)) {
9
10
  throw new Error("Can't create C# type declaration scope inside of " + currentScope.constructor.name);
10
11
  }
11
- return new CSharpNamedTypeScope(ownerSymbol, currentScope, options);
12
+ return createScope(CSharpNamedTypeScope, ownerSymbol, currentScope, options);
12
13
  }
13
14
  export function createClassScope(ownerSymbol, options = {}) {
14
15
  const currentScope = useCSharpScope();
15
16
  if (!(currentScope instanceof CSharpNamedTypeScope) && !(currentScope instanceof CSharpSourceFileScope)) {
16
17
  throw new Error("Can't create C# class scope inside of " + currentScope.constructor.name);
17
18
  }
18
- return new CSharpClassScope(ownerSymbol, currentScope, options);
19
+ return createScope(CSharpClassScope, ownerSymbol, currentScope, options);
19
20
  }
20
21
  export function createMethodScope(options = {}) {
21
22
  const parentScope = useNamedTypeScope();
22
- return new CSharpMethodScope("method scope", parentScope, options);
23
+ return createScope(CSharpMethodScope, "method scope", parentScope, options);
23
24
  }
24
25
  //# sourceMappingURL=factories.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["CSharpClassScope","useCSharpScope","useNamedTypeScope","CSharpMethodScope","CSharpNamedTypeScope","CSharpSourceFileScope","createNamedTypeScope","ownerSymbol","options","currentScope","Error","constructor","name","createClassScope","createMethodScope","parentScope"],"sources":["../../../src/scopes/factories.ts"],"sourcesContent":[null],"mappings":"AAEA,SAASA,gBAAgB,QAAQ,YAAY;AAC7C,SAASC,cAAc,EAAEC,iBAAiB,QAAQ,eAAe;AACjE,SAASC,iBAAiB,QAAQ,aAAa;AAC/C,SAASC,oBAAoB,QAAQ,iBAAiB;AACtD,SAASC,qBAAqB,QAAQ,kBAAkB;AAExD,OAAO,SAASC,oBAAoBA,CAClCC,WAA4B,EAC5BC,OAA2B,GAAG,CAAC,CAAC,EAChC;EACA,MAAMC,YAAY,GAAGR,cAAc,CAAC,CAAC;EACrC,IACE,EAAEQ,YAAY,YAAYL,oBAAoB,CAAC,IAC/C,EAAEK,YAAY,YAAYJ,qBAAqB,CAAC,EAChD;IACA,MAAM,IAAIK,KAAK,CACb,mDAAmD,GACjDD,YAAY,CAACE,WAAW,CAACC,IAC7B,CAAC;EACH;EAEA,OAAO,IAAIR,oBAAoB,CAACG,WAAW,EAAEE,YAAY,EAAED,OAAO,CAAC;AACrE;AAEA,OAAO,SAASK,gBAAgBA,CAC9BN,WAA4B,EAC5BC,OAA2B,GAAG,CAAC,CAAC,EAChC;EACA,MAAMC,YAAY,GAAGR,cAAc,CAAC,CAAC;EACrC,IACE,EAAEQ,YAAY,YAAYL,oBAAoB,CAAC,IAC/C,EAAEK,YAAY,YAAYJ,qBAAqB,CAAC,EAChD;IACA,MAAM,IAAIK,KAAK,CACb,wCAAwC,GAAGD,YAAY,CAACE,WAAW,CAACC,IACtE,CAAC;EACH;EACA,OAAO,IAAIZ,gBAAgB,CAACO,WAAW,EAAEE,YAAY,EAAED,OAAO,CAAC;AACjE;AACA,OAAO,SAASM,iBAAiBA,CAACN,OAA2B,GAAG,CAAC,CAAC,EAAE;EAClE,MAAMO,WAAW,GAAGb,iBAAiB,CAAC,CAAC;EACvC,OAAO,IAAIC,iBAAiB,CAAC,cAAc,EAAEY,WAAW,EAAEP,OAAO,CAAC;AACpE","ignoreList":[]}
1
+ {"version":3,"names":["createScope","CSharpClassScope","useCSharpScope","useNamedTypeScope","CSharpMethodScope","CSharpNamedTypeScope","CSharpSourceFileScope","createNamedTypeScope","ownerSymbol","options","currentScope","Error","constructor","name","createClassScope","createMethodScope","parentScope"],"sources":["../../../src/scopes/factories.ts"],"sourcesContent":[null],"mappings":"AAAA,SAA6BA,WAAW,QAAQ,gBAAgB;AAEhE,SAASC,gBAAgB,QAAQ,YAAY;AAC7C,SAASC,cAAc,EAAEC,iBAAiB,QAAQ,eAAe;AACjE,SAASC,iBAAiB,QAAQ,aAAa;AAC/C,SAASC,oBAAoB,QAAQ,iBAAiB;AACtD,SAASC,qBAAqB,QAAQ,kBAAkB;AAExD,OAAO,SAASC,oBAAoBA,CAClCC,WAA4B,EAC5BC,OAA2B,GAAG,CAAC,CAAC,EAChC;EACA,MAAMC,YAAY,GAAGR,cAAc,CAAC,CAAC;EACrC,IACE,EAAEQ,YAAY,YAAYL,oBAAoB,CAAC,IAC/C,EAAEK,YAAY,YAAYJ,qBAAqB,CAAC,EAChD;IACA,MAAM,IAAIK,KAAK,CACb,mDAAmD,GACjDD,YAAY,CAACE,WAAW,CAACC,IAC7B,CAAC;EACH;EAEA,OAAOb,WAAW,CAACK,oBAAoB,EAAEG,WAAW,EAAEE,YAAY,EAAED,OAAO,CAAC;AAC9E;AAEA,OAAO,SAASK,gBAAgBA,CAC9BN,WAA4B,EAC5BC,OAA2B,GAAG,CAAC,CAAC,EAChC;EACA,MAAMC,YAAY,GAAGR,cAAc,CAAC,CAAC;EACrC,IACE,EAAEQ,YAAY,YAAYL,oBAAoB,CAAC,IAC/C,EAAEK,YAAY,YAAYJ,qBAAqB,CAAC,EAChD;IACA,MAAM,IAAIK,KAAK,CACb,wCAAwC,GAAGD,YAAY,CAACE,WAAW,CAACC,IACtE,CAAC;EACH;EACA,OAAOb,WAAW,CAACC,gBAAgB,EAAEO,WAAW,EAAEE,YAAY,EAAED,OAAO,CAAC;AAC1E;AACA,OAAO,SAASM,iBAAiBA,CAACN,OAA2B,GAAG,CAAC,CAAC,EAAE;EAClE,MAAMO,WAAW,GAAGb,iBAAiB,CAAC,CAAC;EACvC,OAAOH,WAAW,CAACI,iBAAiB,EAAE,cAAc,EAAEY,WAAW,EAAEP,OAAO,CAAC;AAC7E","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { useScope } from "@alloy-js/core";
1
+ import { createScope, useScope } from "@alloy-js/core";
2
2
  import { CSharpNamedTypeScope } from "./named-type.js";
3
3
  import { CSharpSourceFileScope } from "./source-file.js";
4
4
  export class CSharpNamespaceScope extends CSharpNamedTypeScope {
@@ -16,7 +16,7 @@ export function createCSharpNamespaceScope(namespaceSymbol) {
16
16
  if (parentScope && !(parentScope instanceof CSharpNamespaceScope || parentScope instanceof CSharpSourceFileScope)) {
17
17
  throw new Error("Namespaces can only be created within a namespace or source file");
18
18
  }
19
- const scope = new CSharpNamespaceScope(namespaceSymbol, parentScope);
19
+ const scope = createScope(CSharpNamespaceScope, namespaceSymbol, parentScope);
20
20
  return scope;
21
21
  }
22
22
  export function useEnclosingNamespaceScope() {
@@ -1 +1 @@
1
- {"version":3,"names":["useScope","CSharpNamedTypeScope","CSharpSourceFileScope","CSharpNamespaceScope","constructor","namespaceSymbol","parentScope","binder","ownerSymbol","createCSharpNamespaceScope","Error","scope","useEnclosingNamespaceScope","currentScope","undefined","useNamespace","parent"],"sources":["../../../src/scopes/namespace.ts"],"sourcesContent":[null],"mappings":"AAAA,SAAsBA,QAAQ,QAAQ,gBAAgB;AAEtD,SAASC,oBAAoB,QAAQ,iBAAiB;AACtD,SAASC,qBAAqB,QAAQ,kBAAkB;AAExD,OAAO,MAAMC,oBAAoB,SAASF,oBAAoB,CAAC;EAC7DG,WAAWA,CACTC,eAAgC,EAChCC,WAA0D,EAC1D;IACA,KAAK,CAACD,eAAe,EAAEC,WAAW,EAAE;MAClCC,MAAM,EAAEF,eAAe,CAACE;IAC1B,CAAC,CAAC;EACJ;EAEA,IAAIC,WAAWA,CAAA,EAAG;IAChB,OAAO,KAAK,CAACA,WAAW;EAC1B;AACF;AAEA,OAAO,SAASC,0BAA0BA,CAACJ,eAAgC,EAAE;EAC3E,MAAMC,WAAW,GAAGN,QAAQ,CAAC,CAAC;EAC9B,IACEM,WAAW,IACX,EACEA,WAAW,YAAYH,oBAAoB,IAC3CG,WAAW,YAAYJ,qBAAqB,CAC7C,EACD;IACA,MAAM,IAAIQ,KAAK,CACb,kEACF,CAAC;EACH;EAEA,MAAMC,KAAK,GAAG,IAAIR,oBAAoB,CAACE,eAAe,EAAEC,WAAW,CAAC;EAEpE,OAAOK,KAAK;AACd;AAEA,OAAO,SAASC,0BAA0BA,CAAA,EAAqC;EAC7E,MAAMC,YAAY,GAAGb,QAAQ,CAAC,CAAC;EAC/B,IAAI,EAAEa,YAAY,YAAYV,oBAAoB,CAAC,EAAE;IACnD,OAAOW,SAAS;EAClB;EAEA,OAAOD,YAAY;AACrB;AAEA,OAAO,SAASE,YAAYA,CAAA,EAAG;EAC7B,IAAIJ,KAA8B,GAAGX,QAAQ,CAAC,CAAC;EAC/C,OAAOW,KAAK,EAAE;IACZ,IAAIA,KAAK,YAAYR,oBAAoB,EAAE;MACzC,OAAOQ,KAAK;IACd;IACAA,KAAK,GAAGA,KAAK,CAACK,MAAM;EACtB;EAEA,MAAM,IAAIN,KAAK,CAAC,6BAA6B,CAAC;AAChD","ignoreList":[]}
1
+ {"version":3,"names":["createScope","useScope","CSharpNamedTypeScope","CSharpSourceFileScope","CSharpNamespaceScope","constructor","namespaceSymbol","parentScope","binder","ownerSymbol","createCSharpNamespaceScope","Error","scope","useEnclosingNamespaceScope","currentScope","undefined","useNamespace","parent"],"sources":["../../../src/scopes/namespace.ts"],"sourcesContent":[null],"mappings":"AAAA,SAAsBA,WAAW,EAAEC,QAAQ,QAAQ,gBAAgB;AAEnE,SAASC,oBAAoB,QAAQ,iBAAiB;AACtD,SAASC,qBAAqB,QAAQ,kBAAkB;AAExD,OAAO,MAAMC,oBAAoB,SAASF,oBAAoB,CAAC;EAC7DG,WAAWA,CACTC,eAAgC,EAChCC,WAA0D,EAC1D;IACA,KAAK,CAACD,eAAe,EAAEC,WAAW,EAAE;MAClCC,MAAM,EAAEF,eAAe,CAACE;IAC1B,CAAC,CAAC;EACJ;EAEA,IAAIC,WAAWA,CAAA,EAAG;IAChB,OAAO,KAAK,CAACA,WAAW;EAC1B;AACF;AAEA,OAAO,SAASC,0BAA0BA,CAACJ,eAAgC,EAAE;EAC3E,MAAMC,WAAW,GAAGN,QAAQ,CAAC,CAAC;EAC9B,IACEM,WAAW,IACX,EACEA,WAAW,YAAYH,oBAAoB,IAC3CG,WAAW,YAAYJ,qBAAqB,CAC7C,EACD;IACA,MAAM,IAAIQ,KAAK,CACb,kEACF,CAAC;EACH;EAEA,MAAMC,KAAK,GAAGZ,WAAW,CAACI,oBAAoB,EAAEE,eAAe,EAAEC,WAAW,CAAC;EAE7E,OAAOK,KAAK;AACd;AAEA,OAAO,SAASC,0BAA0BA,CAAA,EAAqC;EAC7E,MAAMC,YAAY,GAAGb,QAAQ,CAAC,CAAC;EAC/B,IAAI,EAAEa,YAAY,YAAYV,oBAAoB,CAAC,EAAE;IACnD,OAAOW,SAAS;EAClB;EAEA,OAAOD,YAAY;AACrB;AAEA,OAAO,SAASE,YAAYA,CAAA,EAAG;EAC7B,IAAIJ,KAA8B,GAAGX,QAAQ,CAAC,CAAC;EAC/C,OAAOW,KAAK,EAAE;IACZ,IAAIA,KAAK,YAAYR,oBAAoB,EAAE;MACzC,OAAOQ,KAAK;IACd;IACAA,KAAK,GAAGA,KAAK,CAACK,MAAM;EACtB;EAEA,MAAM,IAAIN,KAAK,CAAC,6BAA6B,CAAC;AAChD","ignoreList":[]}
@@ -39,6 +39,7 @@ export declare class CSharpSymbol extends OutputSymbol {
39
39
  get accessibility(): DeclaredAccessibility | undefined;
40
40
  set accessibility(value: DeclaredAccessibility | undefined);
41
41
  copy(): CSharpSymbol;
42
+ get debugInfo(): Record<string, unknown>;
42
43
  /**
43
44
  * Whether this symbol is static.
44
45
  */
@@ -1 +1 @@
1
- {"version":3,"file":"csharp.d.ts","sourceRoot":"","sources":["../../../src/symbols/csharp.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAGP,WAAW,EACX,YAAY,EACZ,mBAAmB,EAMpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAEtE,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,MAAM,qBAAqB,GAC7B,SAAS,GACT,WAAW,GACX,UAAU,GACV,QAAQ,CAAC;AAEb,MAAM,WAAW,mBAAoB,SAAQ,mBAAmB;IAC9D;;OAEG;IACH,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,MAAM,iBAAiB,GACzB,QAAQ,GACR,YAAY,GACZ,QAAQ,GACR,OAAO,GACP,UAAU,GACV,WAAW,GACX,OAAO,CAAC;AACZ;;;;;;;;;;GAUG;AACH,qBAAa,YAAa,SAAQ,YAAY;;IAC5C,SAAgB,UAAU,EAAE,iBAAiB,CAAY;gBAGvD,IAAI,EAAE,MAAM,GAAG,OAAO,EACtB,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,GAAG,SAAS,EAC/C,OAAO,GAAE,mBAAwB;IAenC,IAAI,kBAAkB,IAAI,eAAe,GAAG,SAAS,CA4BpD;IAGD,IAAI,aAAa,IAKQ,qBAAqB,GAAG,SAAS,CAFzD;IAED,IAAI,aAAa,CAAC,KAAK,EAAE,qBAAqB,GAAG,SAAS,EASzD;IAED,IAAI;IAyBJ;;OAEG;IACH,IAAI,QAAQ,IAAI,OAAO,CAGtB;IAED,IAAI,QAAQ,CAAC,KAAK,EAAE,OAAO,EAS1B;IAGD;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAGvB;IACD,IAAI,SAAS,CAAC,KAAK,EAAE,OAAO,EAS3B;IAID;;OAEG;IACH,IAAI,UAAU,IAAI,OAAO,CAGxB;IACD,IAAI,UAAU,CAAC,KAAK,EAAE,OAAO,EAS5B;IAGD;;OAEG;IACH,IAAI,UAAU,IAAI,OAAO,CAGxB;IACD,IAAI,UAAU,CAAC,KAAK,EAAE,OAAO,EAS5B;IAGD;;OAEG;IACH,IAAI,QAAQ,IAAI,OAAO,CAGtB;IACD,IAAI,QAAQ,CAAC,KAAK,EAAE,OAAO,EAS1B;IAGD;;OAEG;IACH,IAAI,QAAQ,IAAI,OAAO,CAGtB;IACD,IAAI,QAAQ,CAAC,KAAK,EAAE,OAAO,EAS1B;IAGD;;OAEG;IACH,IAAI,UAAU,IAAI,OAAO,CAGxB;IACD,IAAI,UAAU,CAAC,KAAK,EAAE,OAAO,EAS5B;IAKD;;;;OAIG;IACH,IAAI,UAAU,IASQ,OAAO,CAF5B;IAED,IAAI,UAAU,CAAC,KAAK,EAAE,OAAO,EAS5B;CACF;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,eAAe,mDAQ5D;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,kBAAkB,GACxB,mBAAmB,CAUrB"}
1
+ {"version":3,"file":"csharp.d.ts","sourceRoot":"","sources":["../../../src/symbols/csharp.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,OAAO,EAGP,WAAW,EACX,YAAY,EACZ,mBAAmB,EAMpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAEtE,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,MAAM,qBAAqB,GAC7B,SAAS,GACT,WAAW,GACX,UAAU,GACV,QAAQ,CAAC;AAEb,MAAM,WAAW,mBAAoB,SAAQ,mBAAmB;IAC9D;;OAEG;IACH,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,MAAM,iBAAiB,GACzB,QAAQ,GACR,YAAY,GACZ,QAAQ,GACR,OAAO,GACP,UAAU,GACV,WAAW,GACX,OAAO,CAAC;AACZ;;;;;;;;;;GAUG;AACH,qBAAa,YAAa,SAAQ,YAAY;;IAC5C,SAAgB,UAAU,EAAE,iBAAiB,CAAY;gBAGvD,IAAI,EAAE,MAAM,GAAG,OAAO,EACtB,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,GAAG,SAAS,EAC/C,OAAO,GAAE,mBAAwB;IAenC,IAAI,kBAAkB,IAAI,eAAe,GAAG,SAAS,CA4BpD;IAGD,IAAI,aAAa,IAKQ,qBAAqB,GAAG,SAAS,CAFzD;IAED,IAAI,aAAa,CAAC,KAAK,EAAE,qBAAqB,GAAG,SAAS,EASzD;IAED,IAAI;IA2BJ,IAAa,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAchD;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,OAAO,CAGtB;IAED,IAAI,QAAQ,CAAC,KAAK,EAAE,OAAO,EAS1B;IAGD;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAGvB;IACD,IAAI,SAAS,CAAC,KAAK,EAAE,OAAO,EAS3B;IAID;;OAEG;IACH,IAAI,UAAU,IAAI,OAAO,CAGxB;IACD,IAAI,UAAU,CAAC,KAAK,EAAE,OAAO,EAS5B;IAGD;;OAEG;IACH,IAAI,UAAU,IAAI,OAAO,CAGxB;IACD,IAAI,UAAU,CAAC,KAAK,EAAE,OAAO,EAS5B;IAGD;;OAEG;IACH,IAAI,QAAQ,IAAI,OAAO,CAGtB;IACD,IAAI,QAAQ,CAAC,KAAK,EAAE,OAAO,EAS1B;IAGD;;OAEG;IACH,IAAI,QAAQ,IAAI,OAAO,CAGtB;IACD,IAAI,QAAQ,CAAC,KAAK,EAAE,OAAO,EAS1B;IAGD;;OAEG;IACH,IAAI,UAAU,IAAI,OAAO,CAGxB;IACD,IAAI,UAAU,CAAC,KAAK,EAAE,OAAO,EAS5B;IAKD;;;;OAIG;IACH,IAAI,UAAU,IASQ,OAAO,CAF5B;IAED,IAAI,UAAU,CAAC,KAAK,EAAE,OAAO,EAS5B;CACF;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,eAAe,mDAQ5D;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,kBAAkB,GACxB,mBAAmB,CAUrB"}
@@ -1,4 +1,4 @@
1
- import { OutputDeclarationSpace, OutputMemberSpace, OutputSymbol, track, TrackOpTypes, trigger, TriggerOpTypes, watch } from "@alloy-js/core";
1
+ import { createSymbol, OutputDeclarationSpace, OutputMemberSpace, OutputSymbol, track, TrackOpTypes, trigger, TriggerOpTypes, watch } from "@alloy-js/core";
2
2
  /**
3
3
  * This is the base type for all symbols in C#.
4
4
  *
@@ -65,8 +65,10 @@ export class CSharpSymbol extends OutputSymbol {
65
65
  }
66
66
  copy() {
67
67
  const options = this.getCopyOptions();
68
- const copy = new CSharpSymbol(this.name, undefined, {
68
+ const binder = this.binder;
69
+ const copy = createSymbol(CSharpSymbol, this.name, undefined, {
69
70
  ...options,
71
+ binder,
70
72
  accessibility: this.#accessibility,
71
73
  isStatic: this.#isStatic,
72
74
  isVirtual: this.#isVirtual,
@@ -82,6 +84,21 @@ export class CSharpSymbol extends OutputSymbol {
82
84
  });
83
85
  return copy;
84
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
+ }
85
102
 
86
103
  /**
87
104
  * Whether this symbol is static.