Reverting getter/setter to remake

"clean this up, it sucks, i hate it"
- ne_eo
This commit is contained in:
Jaime Humberto Macias Bustamante
2025-05-14 11:16:02 -07:00
parent 122fd03a29
commit 1cc678fbef
+4 -41
View File
@@ -308,10 +308,7 @@ class Interp {
if (_inCustomClass) {
if (_proxy.__class.hasField(id)) {
var v = expr(e2);
var oldPrivate = _proxy.__class.__allowPrivateAccess;
_proxy.__class.__allowPrivateAccess = true;
_proxy.__class.hset(id, v);
_proxy.__class.__allowPrivateAccess = oldPrivate;
return v;
}
@@ -322,18 +319,12 @@ class Interp {
return v;
}
else if(_proxy.hasField(id) || _proxy.superHasField(id)){
var oldPrivate = _proxy.__allowPrivateAccess;
try {
var v = expr(e2);
_proxy.__allowPrivateAccess = true;
_proxy.hset(id, v); // superClass check already handled in Custom Class
_proxy.__allowPrivateAccess = oldPrivate;
return v;
}
catch(e) {
_proxy.__allowPrivateAccess = oldPrivate;
// TODO: throw an error
}
catch(e) {}
}
}
// Fallback, which calls set()
@@ -403,17 +394,12 @@ class Interp {
return v;
}
else if (_proxy.hasField(f) || _proxy.superHasField(f)) {
var oldPrivate = _proxy.__allowPrivateAccess;
try {
var v = expr(e2);
_proxy.__allowPrivateAccess = true;
_proxy.hset(f, v);
_proxy.__allowPrivateAccess = oldPrivate;
return v;
}
catch(e){
_proxy.__allowPrivateAccess = oldPrivate;
}
catch(e){}
}
}
default:
@@ -453,10 +439,7 @@ class Interp {
// Also ensures property functions are accounted for.
if(_inCustomClass) {
if (_proxy.__class.hasField(id)) {
var oldPrivate = _proxy.__class.__allowPrivateAccess;
_proxy.__class.__allowPrivateAccess = true;
_proxy.__class.hset(id, v);
_proxy.__class.__allowPrivateAccess = oldPrivate;
return v;
}
@@ -465,16 +448,11 @@ class Interp {
return v;
}
else if (_proxy.hasField(id) || _proxy.superHasField(id)) {
var oldPrivate = _proxy.__allowPrivateAccess;
try {
_proxy.__allowPrivateAccess = true;
_proxy.hset(id, v); // superClass check already handled in Custom Class
_proxy.__allowPrivateAccess = oldPrivate;
return v;
}
catch(e) {
_proxy.__allowPrivateAccess = oldPrivate;
}
catch(e) {}
}
}
var l = locals.get(id);
@@ -548,17 +526,12 @@ class Interp {
return v;
}
else if (_proxy.hasField(f) || _proxy.superHasField(f)) {
var oldPrivate = _proxy.__allowPrivateAccess;
try {
v = fop(get(obj, f), expr(e2));
_proxy.__allowPrivateAccess = true;
_proxy.hset(f, v); // superClass check already handled in Custom Class
_proxy.__allowPrivateAccess = oldPrivate;
return v;
}
catch(e) {
_proxy.__allowPrivateAccess = oldPrivate;
}
catch(e) {}
}
}
default:
@@ -766,19 +739,13 @@ class Interp {
if (_inCustomClass) {
// Static access
if (_proxy.__class.hasField(id)) {
var oldPrivate = _proxy.__class.__allowPrivateAccess;
_proxy.__class.__allowPrivateAccess = true;
var r = _proxy.__class.hget(id);
_proxy.__class.__allowPrivateAccess = oldPrivate;
return r;
}
if (_proxy.hasVar(id)) {
var oldPrivate = _proxy.__allowPrivateAccess;
_proxy.__allowPrivateAccess = true;
var r = _proxy.hget(id);
_proxy.__allowPrivateAccess = oldPrivate;
return r;
}
// We are calling a LOCAL function from the same module.
@@ -791,15 +758,11 @@ class Interp {
_nextCallObject = _proxy.superClass;
return !_proxy.superIsCustomClass ? Reflect.getProperty(_proxy.superClass, id) : _proxy.hget(id);
} else {
var oldPrivate = _proxy.__allowPrivateAccess;
try {
_proxy.__allowPrivateAccess = true;
var r = _proxy.hget(id);
_nextCallObject = _proxy;
_proxy.__allowPrivateAccess = oldPrivate;
return r;
} catch (e:Dynamic) {
_proxy.__allowPrivateAccess = oldPrivate;
if(doException)
error(EUnknownVariable(id));
}