Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
additional abstraction actually obscures how it is used instead of simplifying it.
|
|
via virtual helper classes.
|
|
Fixes rule-of-three and copyable-polymorphic warnings reported by clazy.
The default copy constructor and copy assignment operator are
only valid for simple classes so we delete them (i.e. make then not exist)
when we have either a virtual class or a destructor, the code still compiles
so this doesn't fix any bug, it is more a protection for when you think you
can copy a class and don't realize the default copy constrcutor is not doing
what you want and you get crashes. Hopefully this helps us in the future :)
|
|
Implement the move operators and copy construtor
Almost all the init() functions are gone and we just have simple
constructors now
Also made free() public since you're not supposed to call it anymore,
unless you're being evil and malloc'ing Objects like Array/Dict/XRef
This has a huge reaction chain, most importantly we
don't get objects by passing a pointer Object parameter, we
just get the object as a return value, which is a much clearer API
- aobj->copy(&obj);
+ obj = aobj->copy();
before I was never sure what was being copied into what
Comes with a huge diff, I probably made some mistake in the porting
since there was lots of copy & paste involved
|
|
And make sure what we was is a ref, otherwise we abort
|
|
|
|
|
|
|
|
|