Remove logical_ VTABLEs
completed by: Matt Rajca
mentors: whiteknight
Task Description: Parrot Ticket #1655 calls for the removal of all logical_ VTABLEs. These VTABLEs should be removed, and replaced with calls to VTABLE_get_bool and the necessary C operators. For instance, VTABLE_not(interp, pmc) can be converted to:
!VTABLE_get_bool(interp, pmc);
VTABLE_logical_and(interp, pmca, pmcb) can be replaced with:
VTABLE_get_bool(interp, pmca) & VTABLE_get_bool(interp, pmcb)
Steps to Complete:
- Create a fork of parrot/parrot on Github
- Remove all the logical vtables from src/vtable.tbl
- Remove all instances of logical vtables from files in src/pmc/*.pmc
- Remove the entry for ticket #1655 from DEPRECATED.pod
- build Parrot and run all tests to make sure nothing is broken
- Remove any tests that explicitly rely on calling logical vtables directly, or overriding those vtables in child classes (ask if you are not sure)
- Open a pull request o github