booingthetroll Expert Cheater
Reputation: 0
Joined: 30 Aug 2011 Posts: 114 Location: ::1
|
Posted: Thu Jun 25, 2020 5:57 pm Post subject: CE Overloaded Symbol Resolution |
|
|
I love AutoAssemble enough that I use it wherever I can avoid writing my own modules. One thing that has been a major hindrance in a couple of cases has been a lack of distinction between overloaded symbols.
For example, right now I'm writing a script to dump packets using a game library that has symbols exposed. This library has 32-bit and 64-bit versions, so I want to write my script to be "process-agnostic." Say there are two constructors: and | Code: | | Packet::Packet(Packet&) | As far as I can tell, there is no way to reference the copy constructor (the latter constructor, address-wise) by name. This is the only thing stopping me from writing a very simple, clean script that works in both cases (edit: oops, I mean updating-wise).
I understand complex resolution may be a black hole of work, especially with namespaces. Is there any workaround right now and if not, might this be considered as a feature?
Since partial namespaces are already supported I'm envisioning something like
- Check symbol return type, but only to prevent matching
- No parameters, no parenthesis: operate as now
- No parameters, empty parenthesis: only match if no parameters
- Parameters: apply the name matching to each parameter (I guess this is where it can get really ugly if some things match better than others with different parameters, maybe there can be some kind of score or something )
|
|