mirror of
https://github.com/fluencelabs/assemblyscript
synced 2025-07-16 23:02:09 +00:00
Add ArrayBuffer.isView and rework Array.isArray (#431)
This commit is contained in:
@@ -2856,6 +2856,14 @@ export class ClassPrototype extends Element {
|
||||
this.decoratorFlags = decoratorFlags;
|
||||
}
|
||||
|
||||
extends(basePtototype: ClassPrototype | null): bool {
|
||||
var current: ClassPrototype | null = this;
|
||||
do {
|
||||
if (current === basePtototype) return true;
|
||||
} while (current = current.basePrototype);
|
||||
return false;
|
||||
}
|
||||
|
||||
toString(): string {
|
||||
return this.simpleName;
|
||||
}
|
||||
@@ -2969,6 +2977,16 @@ export class Class extends Element {
|
||||
return null;
|
||||
}
|
||||
|
||||
lookupField(name: string, shouldReadonly: boolean = false): Element | null {
|
||||
if (this.members == null) return null;
|
||||
var member = this.members.get(name);
|
||||
if (
|
||||
member == null || member.kind != ElementKind.FIELD ||
|
||||
(shouldReadonly && !member.is(CommonFlags.READONLY))
|
||||
) return null;
|
||||
return member;
|
||||
}
|
||||
|
||||
offsetof(fieldName: string): u32 {
|
||||
var members = assert(this.members);
|
||||
assert(members.has(fieldName));
|
||||
|
Reference in New Issue
Block a user