Skip to content

Commit 93a66c8

Browse files
committed
Class generator fixed
1 parent b7e626e commit 93a66c8

2 files changed

Lines changed: 20 additions & 1 deletion

File tree

YantraJS.JSClassGenerator/ClassGenerator.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,8 @@ private string GenerateCode()
4141
{
4242
// get attribute info...
4343

44+
StringExtensions.UseKeyStringEnum = type.Type.ContainingAssembly.Name == "YantraJS.Core";
45+
4446
var sb = new StringBuilder();
4547

4648
try

YantraJS.JSClassGenerator/ListExtensions.cs

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,25 @@ namespace YantraJS.JSClassGenerator
77

88
internal static class StringExtensions
99
{
10+
11+
internal static bool UseKeyStringEnum = false;
12+
1013
public static string ToKeyStringName(this string name) {
11-
return $"\"{name}\".ToKeyString()";
14+
if (!UseKeyStringEnum)
15+
{
16+
return $"\"{name}\".ToKeyString()";
17+
}
18+
switch(name)
19+
{
20+
case "return":
21+
case "throw":
22+
case "is":
23+
case "catch":
24+
case "finally":
25+
case "for":
26+
return $"KeyString.@{name}";
27+
}
28+
return $"KeyString.{name}";
1229
}
1330
}
1431

0 commit comments

Comments
 (0)