BL includes a LOT more information when dumping a class, which is nice for a small example, but when dumping something like the internal classes in ColdBox, the amount of data just gets way out of hand and the performance gets very poor and it’s hard to find anything.
Some notes:
Adobe collapses methods by default
Adobe doesn’t even show private methods
Neither Adobe nor Lucee show ANY data from the superclass outside of the name-- it’s not recursive at all
BL seems to be including ALL metadata, but Adobe and Lucee don’t include
documentation
properties
annotations
full function metadata
other class meta keys
We can hide sections such as “static methods” if there are none instead of having the empty placeholder
I’m not suggesting we need to exactly match Adobe or Lucee, but we need to trim some fat to keep performance and usability.
Here is a dump of a simple class with two methods that extends another class.
Lucee:
Adobe:
Adobe (with methods expanded):
BoxLang:
Attachments
4
31 Aug 2024, 09:34 PM
31 Aug 2024, 09:34 PM
31 Aug 2024, 09:34 PM
31 Aug 2024, 09:34 PM
Activity
Show:
Fixed
Pinned fields
Click on the next to a field label to start pinning.
BL includes a LOT more information when dumping a class, which is nice for a small example, but when dumping something like the internal classes in ColdBox, the amount of data just gets way out of hand and the performance gets very poor and it’s hard to find anything.
Some notes:
Adobe collapses methods by default
Adobe doesn’t even show private methods
Neither Adobe nor Lucee show ANY data from the superclass outside of the name-- it’s not recursive at all
BL seems to be including ALL metadata, but Adobe and Lucee don’t include
documentation
properties
annotations
full function metadata
other class meta keys
We can hide sections such as “static methods” if there are none instead of having the empty placeholder
I’m not suggesting we need to exactly match Adobe or Lucee, but we need to trim some fat to keep performance and usability.
Here is a dump of a simple class with two methods that extends another class.
Lucee:
Adobe:
Adobe (with methods expanded):
BoxLang: