Comments (1)
On the JavaScript target, enabling full DCE actually causes getProperty('myField') to fail, presumably because the getter function is getting culled. Getter and setter functions should definitely never get culled if the class itself has not been culled.
DCE is granular at field level by design.
If anything, the argument could be made that Reflect.getProperty
should keep all properties on kept classes.
If you can, avoid reflection like the plague. More often than not, safer and faster alternatives are available. If not, you could either use addGlobalMetaData
to whatever packages you wish with to perform reflection on, or add an onGenerate
hook that marks all getters and setters with @:keep
.
Additionally, there could be a Reflect.properties
and Reflect.hasProperty
. Made a JS implementation here: https://try.haxe.org/#5611215a
That said, I would yet again advise against using such a thing though ;)
from haxe.
Related Issues (20)
- Missing type parameter info when return type inferred from interface HOT 1
- Closures are not inlined when used through another inline closure
- Bug during haxe --macro Field index for SSL_IS_SERVER not found HOT 1
- Fatal error: exception EvalContext.RunTimeException(_, 0, _) HOT 1
- [js] It would be nice to have a more elegant output of default arguments in es6 HOT 4
- Add thousand seperator for numeric format HOT 3
- Macro interpreter memory leak, up to 24GB RAM usage observed HOT 10
- Strange macro behavior with server during heaps shader generation
- Hashlink - Passing default Single args results in 0 HOT 1
- [hxb] add configuration for shared string pools
- haxe not in alpine linux
- Issues with haxe in 4.3.4-2 HOT 4
- CompilerConfiguration.#args and Sys.args() are the same.
- @:structInit with getter+setter won't compile HOT 1
- IntIterators are not Iterable HOT 4
- [cpp] Abstract class functions with default values are broken
- [macro] reification pattern matching regression HOT 1
- Accessing super from a local function HOT 1
- Warning WInlineOptimizedField appear in some strange condition
- Abstract multitype value that is generic does not generate correctly in 4.3.4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from haxe.