Skip to content

Commit 7cb1471

Browse files
committed
[Chore] apply fixes
1 parent 5f7abff commit 7cb1471

File tree

6 files changed

+26
-43
lines changed

6 files changed

+26
-43
lines changed

dist/asc.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/asc.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/assemblyscript.d.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4151,6 +4151,7 @@ declare module 'assemblyscript/src/builtins' {
41514151
const sizeof = "~lib/builtins/sizeof";
41524152
const alignof = "~lib/builtins/alignof";
41534153
const offsetof = "~lib/builtins/offsetof";
4154+
const nameof = "~lib/builtins/nameof";
41544155
const select = "~lib/builtins/select";
41554156
const unreachable = "~lib/builtins/unreachable";
41564157
const changetype = "~lib/builtins/changetype";

dist/assemblyscript.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/assemblyscript.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/builtins.ts

Lines changed: 21 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -773,26 +773,9 @@ export function compileCall(
773773
}
774774
}
775775
case BuiltinSymbols.nameof: {
776+
let value: string | null = null;
777+
let resultType: Type | null = evaluateConstantType(compiler, typeArguments, operands, reportNode);
776778
compiler.currentType = compiler.program.stringInstance.type;
777-
778-
if (checkTypeOptional(typeArguments, reportNode, compiler)
779-
| checkArgsOptional(operands, 0, 1, reportNode, compiler)) {
780-
compiler.error(
781-
DiagnosticCode.Operation_not_supported,
782-
reportNode.typeArgumentsRange
783-
);
784-
return module.unreachable();
785-
}
786-
787-
let expression = new StringLiteralExpression();
788-
let resultType: Type | null = null;
789-
790-
if (typeArguments !== null && typeArguments.length > 0) {
791-
resultType = typeArguments[0];
792-
} else {
793-
resultType = evaluateConstantType(compiler, typeArguments, operands, reportNode);
794-
}
795-
796779
if (resultType === null) {
797780
compiler.error(
798781
DiagnosticCode.Operation_not_supported,
@@ -802,31 +785,30 @@ export function compileCall(
802785
}
803786

804787
if (resultType.classReference !== null) {
805-
expression.value = resultType.classReference.name;
788+
value = resultType.classReference.name;
806789
} else if (resultType.signatureReference !== null) {
807-
expression.value = "Function";
790+
value = "Function";
808791
} else {
809-
let kind = resultType.kind;
810-
switch (kind) {
811-
case TypeKind.BOOL: expression.value = "bool"; break;
812-
case TypeKind.I8: expression.value = "i8"; break;
813-
case TypeKind.U8: expression.value = "u8"; break;
814-
case TypeKind.I16: expression.value = "i16"; break;
815-
case TypeKind.U16: expression.value = "u16"; break;
816-
case TypeKind.I32: expression.value = "i32"; break;
817-
case TypeKind.U32: expression.value = "u32"; break;
818-
case TypeKind.F32: expression.value = "f32"; break;
819-
case TypeKind.I64: expression.value = "i64"; break;
820-
case TypeKind.U64: expression.value = "u64"; break;
821-
case TypeKind.F64: expression.value = "f64"; break;
822-
case TypeKind.ISIZE: expression.value = "isize"; break;
823-
case TypeKind.USIZE: expression.value = "usize"; break;
824-
case TypeKind.VOID: expression.value = "void"; break;
825-
default: expression.value = "unknown"; break;
792+
switch (resultType.kind) {
793+
case TypeKind.BOOL: value = "bool"; break;
794+
case TypeKind.I8: value = "i8"; break;
795+
case TypeKind.U8: value = "u8"; break;
796+
case TypeKind.I16: value = "i16"; break;
797+
case TypeKind.U16: value = "u16"; break;
798+
case TypeKind.I32: value = "i32"; break;
799+
case TypeKind.U32: value = "u32"; break;
800+
case TypeKind.F32: value = "f32"; break;
801+
case TypeKind.I64: value = "i64"; break;
802+
case TypeKind.U64: value = "u64"; break;
803+
case TypeKind.F64: value = "f64"; break;
804+
case TypeKind.ISIZE: value = "isize"; break;
805+
case TypeKind.USIZE: value = "usize"; break;
806+
case TypeKind.VOID: value = "void"; break;
807+
default: value = "unknown"; break;
826808
}
827809
}
828810

829-
return compiler.compileStringLiteral(expression);
811+
return compiler.ensureStaticString(value);
830812
}
831813

832814
// === Math ===================================================================================

0 commit comments

Comments
 (0)