Commit Graph

23 Commits (56d060b4c9ea1b1d14ed497b71859f358d13b9a7)

Author SHA1 Message Date
Varun Agrawal 56d060b4c9 Squashed 'wrap/' changes from b80bc63cf..903694b77
903694b77 Merge pull request #92 from borglab/fix/global-variables
abb74dd26 added support for default args, more tests, and docs
cfa104257 Merge pull request #83 from borglab/feature/globalVariables
fdd7b8cad fixes
d4ceb63c6 add correct namespaces to global variable values
925c02c82 global variables works
af62fdef7 unit test for global variable
3d3f3f3c9 add "Variable" to the global parsing rule
ecfeb2025 rename "Property" to "Variable" and move into separate file

git-subtree-dir: wrap
git-subtree-split: 903694b777c4c25bd9cc82f8d3950b3bbc33d8f2
2021-04-19 16:09:06 -04:00
Varun Agrawal db373dfa52 Squashed 'wrap/' changes from bae34fac8..b80bc63cf
b80bc63cf Merge pull request #90 from borglab/fix/tpl_dependency
015b12da5 Merge pull request #86 from borglab/feature/optionalargs
362851980 address review comments
e461ca50e Merge pull request #89 from borglab/fix/template_iostream
2d413db57 add pybind cpp generation dependency on tpl file
79881c25e include pybind11 iostream for ostream_redirect in example tpl
5e8323c25 fix test fixture
95495726a Merge branch 'master' into feature/optionalargs
5af826840 clean up the _py_args_names method to reduce copy-pasta
844ff9229 add identifier parsing to _type
c3adca7a4 remove extra spaces from Type repr
350b531d7 slight test improvement
fd4f37578 cleaner default argument parsing
6013deacb overpowered default argument parsing rule
dbcda0ea2 fix unit tests for __repr__ ref  vs ptr
1c23c42e4 fix pointer vs const ref in __repr__
9b40350f1 update matlab tests
df7e9023c handle __repr__ with default arguments
092ef489b update pybind_wrapper for default arguments
3a2d7aa8a unit test default argument pybind
61a2b114e implement default argument parser
c2b92ffec unit test for parsing default arguments

git-subtree-dir: wrap
git-subtree-split: b80bc63cf466f9751e8059c0abb4a4d73b23efbe
2021-04-16 21:07:09 -04:00
Gerry Chen 00a04a1f5d Squashed 'wrap/' changes from 5ddaff8ba..bae34fac8
bae34fac8 Merge pull request #82 from borglab/feature/templated-base-class
6fd4053dd Merge pull request #84 from borglab/feature/print_redirectstdout
349784a38 comment about redirecting stdout
dc4fd9371 updated docs
b43f7c6d7 Merge pull request #80 from borglab/feature/multiple_interface_files
7d8c3faa7 redirect std::out for print_()
a812a6110 print redirect stdout unit test
97f3b6994 support for templated base class
3e16564e3 test cases for templated base class
7b9d080f5 Revert "unit test for printing with keyformatter"
45e203195 Revert "funcitonal print passes unit test"
8b5d66f03 Revert "include functional and iostream"
34bfbec21 Revert "delete debug statement"
dbe661c93 Revert "add includes to the example tpl file."
f47e23f1a Revert "Revert "function to concatenate multiple header files together""
e667e2095 Revert "function to concatenate multiple header files together"
600c77bf4 add includes to the example tpl file.
d5caca20e delete debug statement
4a554edb8 include functional and iostream
e8ad2c26f funcitonal print passes unit test
077d5c4e7 unit test for printing with keyformatter
d5a1e6dff function to concatenate multiple header files together

git-subtree-dir: wrap
git-subtree-split: bae34fac828acb6b17bfe37ebe78f7c9a156ed5a
2021-04-12 19:08:29 -04:00
Varun Agrawal edf7e45071 Squashed 'wrap/' changes from 96ccdfd0b..5ddaff8ba
5ddaff8ba Merge pull request #77 from borglab/fix/template-as-template-arg
0b6f2d92b allow templates as paramters to templates
7f3e242b0 Merge pull request #76 from borglab/fix/cmake-config
0caa79b82 macro to find and configure matlab
522557232 fix GTWRAP_INCLUDE_NAME
78a5d3afa Use CMakePackageConfigHelpers to vastly simplify the package config
76f8b9e5d Merge pull request #75 from borglab/fix/template-args
3b8e8389e remove reference from shared pointers
045393c7b docs and flag renaming
d23d8beae tests
ef96b4bdc don't make template parameters as references
d1e1dc697 Merge pull request #74 from borglab/fix/type-recursion
8202ecf10 minor fixes
5855ea85b support for passing templated types as arguments
150cc0578 Support for templated return types
5c58f8d03 Merge pull request #73 from borglab/fix/types-refactor
c697aa9c8 refactored the basic and custom types to make it cleaner, added more tests
98e2c3fa1 Merge pull request #68 from borglab/fix/cmake
c6d5e786a make config agnostic to install prefix
4d6999f15 Merge pull request #69 from borglab/feature/call-and-index
ccf408804 add support for callable and indexing overloads
8f8e3ec93 add status messages
88566eca4 make WRAP_PYTHON_VERSION an optional argument
01b8368ad Merge pull request #67 from borglab/feature/operator-overloading
522a12801 remove unsupported operators
209346133 update check location for unary operator
39e290f60 fix small typo
faa589bec update DOCS
7ff83cec8 minor fixes
8ce37766f fixed tests
21c477c4d include pybind11/operators
a3534ac5e wrap operator overloads
67c8f2089 instantiate templates for operators
e9dce65d8 use ReturnType for ease in other places and use members in Class
3078aa6db added parser rule for operator overloading

git-subtree-dir: wrap
git-subtree-split: 5ddaff8bab6c05e8a943c94993bf496e13296dd6
2021-04-01 23:20:12 -04:00
Varun Agrawal c78ca4bd02 Squashed 'wrap/' changes from 9a467794e..96ccdfd0b
96ccdfd0b Merge pull request #65 from borglab/fix/special-cases
04c06b7e6 Merge pull request #63 from borglab/fix/cmake
bf2c91bd2 fix issue in template instantiation generator
152dbcb12 test for special cases
d03004b24 fixed the cmake to discover the correct python version and set all corresponding variables
4cf66e0da Merge pull request #61 from borglab/fix/python-variables
80558e35b added more status messages and set the PYBIND11_PYTHON_VERSION each time
73afd1b0a set both sets of Python variables and find python version when including PybindWrap
REVERT: 9a467794e Merge pull request #61 from borglab/fix/python-variables
REVERT: 6bae7af99 added more status messages and set the PYBIND11_PYTHON_VERSION each time
REVERT: 5129cf3b9 set both sets of Python variables and find python version when including PybindWrap

git-subtree-dir: wrap
git-subtree-split: 96ccdfd0b84a4dbf1b3e9ed31b95ebc2758be9cc
2021-03-26 00:54:01 -04:00
Varun Agrawal 34aae4f72a Squashed 'wrap/' changes from 29628426d..9a467794e
9a467794e Merge pull request #61 from borglab/fix/python-variables
6bae7af99 added more status messages and set the PYBIND11_PYTHON_VERSION each time
5129cf3b9 set both sets of Python variables and find python version when including PybindWrap
5a67b526c Merge pull request #60 from borglab/fix/multi-template-methods
4a73b29ef better method names for testing templated methods
989fdf946 added unit test for multi-template methods
a56908c21 add namespace qualification to instantiations
a25d9631e graceful handling of templated method instantiations
0baa5ab5d multiple templates in methods

git-subtree-dir: wrap
git-subtree-split: 9a467794e8542872b2782cdaec338aaa30a92e33
2021-03-25 13:32:38 -04:00
Varun Agrawal a62a986fbb Squashed 'wrap/' changes from 548e61b1f..29628426d
29628426d Merge pull request #59 from borglab/fixes
a95429ea0 Merge pull request #56 from borglab/fix/this-instantiation
3e22d6516 more documenatation and some formatting
526301499 updated the test to test for non-templated This
cdb75f36f Merge branch 'master' into fix/this-instantiation
0f5ae3b7f moved example pybind template to templates directory
d55f5db38 remove extra whitespace
21891ad3d skip tests until we figure out what's going on
2ea6307c3 better way of handling the matlab includes in the matlab wrapper
d0f8a392c Merge pull request #55 from borglab/feature/refactor3
57d47cbd9 create directories to store generated output
4788a1e37 fixed This instantiation
61d2cbfc4 add namespace test to matlab wrapper
ec39023e6 added more, smaller tests for Python wrapper
19c35b857 test for matlab class inheritance and some clean up
06ca5da13 test for matlab functions
cb05d7379 minor clean up and separate tests for geometry and class
8d8145cc4 break down test interface file into smaller files that can be easily debugged
97328f057 restructured test files and added dedicated fixtures directory

git-subtree-dir: wrap
git-subtree-split: 29628426d2c1a7bb728e40307c0f25cb468cd1bc
2021-03-25 00:49:51 -04:00
Varun Agrawal 66d3b95a6d Squashed 'wrap/' changes from 3eff76f60..548e61b1f
548e61b1f Merge pull request #57 from borglab/fix/configurable-matlab-include
b58eabaf1 set correct template file path
483cdab9c fix
1f393516d fix CI syntax
8f0a3543f more concise cmake command because we don't care about the extra files generated
641ad1326 update CI to run cmake
de6b9260f added CMake variable to configure the include directory for matlab.h
cbe5f18bc Merge pull request #54 from borglab/feature/refactor2
cc78ee3bb test formatting
046a50b01 break down interface_parser into a submodule of smaller parts

git-subtree-dir: wrap
git-subtree-split: 548e61b1fbf02759d2e4a52435c2f1b3cbde98f0
2021-03-24 16:14:55 -04:00
Varun Agrawal 58a9622777 Squashed 'wrap/' changes from aae9b4605..3eff76f60
3eff76f60 Merge pull request #53 from borglab/feature/refactor
13215dfa7 Merge pull request #52 from borglab/fix/tests
696913b11 install setuptools
9523328ba Merge branch 'master' into fix/tests
7c630b361 some more cleanup
656993a71 cleaned up  Typename
a16f6f38e move qualified and basis type outside to their own class scope
72ead8bd7 Merge pull request #51 from borglab/fix/test-interface-parser
6deefd4fc added tests for interface_parser
50d490a85 Merge pull request #50 from borglab/feature/refs-all-types
be4511290 updated docs for BasisType
0e80b0d8c update MATLAB tests
0015d7397 added support for shared pointer and ref for basis types
86d2158f1 remove std::string from list of Basis types
94f928441 ignore code coverage reports
2033dd345 replace prints with log.debug statements
ae98091b3 fix deprecation in doc tests
13a2f66c4 Merge pull request #46 from borglab/feature/new-shared-pointer
3c7d85865 updated docs
6d7897088 use @ for raw pointer, go back to * for shared pointer
1d6194c57 updated matlab wrapper to handle both raw and shared pointers
1448f6924 fix some failing tests
2ab1dae32 Merge branch 'master' into feature/new-shared-pointer
96f8a56bd Merge pull request #47 from borglab/fix/ci
6003203f3 run CI only for pull requests
a8f29ead1 fix the python version yml key
fcae17227 check if directory exists when testing
f592f08c9 explicit pip3 so that we don't use Python2
d49c2f3c2 correct call for pip
dfe360526 fix the CI
149b7c523 docs for templated functions
f2189acc6 support typedefing for templated functions
965458a2b added test for templated functions
eaff6e6ab made is_const common for all types
3d9c70b32 added tests and cleaned up a bit
010b89626 support for simple pointers on basis types
6b98fd80c new syntax for shared_ptr
ff7ad0b78 support for templated functions
a1a443c8d Merge pull request #43 from borglab/fix/cmake-and-matlab
2f3a055e4 remove accidentally committed file
770d055e2 set proper paths for cmake and eschew relative paths
773d01ae1 fix bug in matlab wrapper
721ef740f Merge pull request #41 from borglab/feature/type-hints
67aac9758 minor refactor of CI yml
e6a63ae0c fix all mypy issues
a3aaa3e7c remove a lot of linter issues from matlab_wrapper
a96db522f static typing for interface_parser

git-subtree-dir: wrap
git-subtree-split: 3eff76f604b5ba9e71cf4947654e288142ed7a94
2021-03-24 00:36:02 -04:00
Varun Agrawal a30574fdff Squashed 'wrap/' changes from 91f3835a8..aae9b4605
aae9b4605 Merge pull request #40 from borglab/fix/instantiation-capital
dc8c67843 fix template instantiation capitalization

git-subtree-dir: wrap
git-subtree-split: aae9b4605b1a95fd0165f8ec3fede1fb7ffcb9c1
2021-03-13 18:56:36 -05:00
Varun Agrawal ec48b14d70 Squashed 'wrap/' changes from d19cda546..91f3835a8
91f3835a8 Merge pull request #39 from borglab/fix/deepcopy
b64e01744 don't remove underscore for instantiations
80c060b52 monkey patch deepcopy issue in pyparsing

git-subtree-dir: wrap
git-subtree-split: 91f3835a8a69919ccb67435c567803f162faeac7
2021-03-13 18:31:10 -05:00
Varun Agrawal 55dade0b8e Squashed 'wrap/' changes from b0eb968f2..d19cda546
d19cda546 Merge pull request #36 from borglab/fix/shared-ptr-property
13ef2485c Merge pull request #37 from borglab/feature/multiple-templates
f3f40b375 add support for multiple instantiated templates
4f33353ef support for templated return types
1244045c2 cleaned up tests and added test for Pybind property shared pointer
0f3fbc428 add support for pointers as properties, and update docs
9974a73ec Merge pull request #35 from borglab/feature/docs
e9c52421d Added DOCS with info about wrapping structure
627154f9f fix call to superclass init
8a4e61ead added more docs and fixed typo for holder_type
b1bdec933 added docstrings to interface_parser and took care of all the errors and warnings

git-subtree-dir: wrap
git-subtree-split: d19cda5467f8b5cb8d4f571d8735ede328dae02d
2021-03-13 12:01:28 -05:00
Varun Agrawal f52b09660e Squashed 'wrap/' changes from b28b3570d..b0eb968f2
b0eb968f2 Completely handle Matlab wrapping (#34)
4ad71812a Merge pull request #33 from borglab/fix/script-destination
0c832eed7 reverted from TYPE to DESTINATION for wrapper scripts
10e1efd6f Merge pull request #32 from ayushbaid/feature/pickle
55d5d7fbe ignoring pickle in matlab wrap
8d70c7fe2 adding newlines
dee8aaee3 adding markers for pickling
46fc45d82 separating out the marker for pickle
d37b8a972 Merge pull request #31 from ayushbaid/feature/pickle
efd4a0fb4 removing tab
42fd231f3 adding newline for test compare
0aa316150 removing extra brackets
7fe1d7d0f adding pickle code to expected file
9c3ab7a8b fixing string format for new classname
2f89284e8 moving pickle support with the serialization code
5a8abc916 adding pickle support for select classes using serialization

git-subtree-dir: wrap
git-subtree-split: b0eb968f29a2261700361599cab2823221dd0f9d
2021-03-10 09:18:36 -05:00
Fan Jiang 8d49d7dc40 Squashed 'wrap/' changes from 85d34351c..b28b3570d
b28b3570d Merge pull request #30 from borglab/feature/remove_install
cc2b07193 Cleanup
610ca176b Allow GTWRAP to be installed in a prefix
193b922c6 Merge pull request #29 from borglab/feature/remove_install
6d2b6ace6 fix path to package
e5f220759 clean up some leftover code
b0b158a0a install python package as a directory
3f4a7c775 Allow usage without install into global env
5040ba415 Merge pull request #28 from borglab/readme-update
14a7452fe updated README Getting Started section

git-subtree-dir: wrap
git-subtree-split: b28b3570d221b89f3568f44ed439d3a444903570
2021-02-15 19:42:16 -05:00
Varun Agrawal 9b03b6d111 Squashed 'wrap/' changes from 186ed2c79..85d34351c
85d34351c Merge pull request #27 from borglab/fix/python3.5
dfe7639c0 support for python 3.5

git-subtree-dir: wrap
git-subtree-split: 85d34351cdb29172601845f73d3281e786a531b3
2021-01-13 10:54:22 -05:00
Varun Agrawal e9080bf885 Squashed 'wrap/' changes from 09f8bbf71..186ed2c79
186ed2c79 Merge pull request #26 from borglab/fix/required
9af1b8f09 unmake python cmake package as required

git-subtree-dir: wrap
git-subtree-split: 186ed2c792f80bbd315e747ef8622f8355c626f6
2021-01-12 20:45:43 -05:00
Varun Agrawal 7cc7232a99 Squashed 'wrap/' changes from dfa624e77..09f8bbf71
09f8bbf71 Merge pull request #25 from borglab/fix/function-name
0dbfb6c13 fix function name to be the correct one
f69f8b01f Merge pull request #24 from borglab/fix/pip
6519a6627 use pip install to overcome superuser issues
b11ecf4e8 Merge pull request #23 from borglab/fix/remove-pip-args
813030108 remove pip-args since we are using setup.py
498d233e0 Merge pull request #22 from borglab/fix/package-install
846212ac3 set correct flags for installing gtwrap package
62161cd20 Merge pull request #21 from borglab/feature/script-vars
93be1d9f8 set script variables and move pybind11 loading so gtwrap can be used under gtsam
8770e3c7e Merge pull request #20 from borglab/fix/pybind-include
8c3c83618 proper placement of pybind11 include
a9ad4f504 Merge pull request #19 from borglab/feature/package
99d8a12c7 added more documentation
4cbec1579 change to macro so we don't have to deal with function scopes
b83e405b8 updates to completely install the package
38a64b3de new scripts which will be installed to bin directory
bf9646235 Merge pull request #18 from borglab/fix/cmake-min
c7c280099 Consistent cmake minimum required
42df58f62 Merge pull request #17 from borglab/fix/cleanup
e580b282d version bump
4ccd66fa5 More finegrained handling of Python version
6476fd710 Merge pull request #16 from borglab/feature/better-find-python
8ac1296a0 use setup.py to install dependencies
e9ac473be install dependencies and support versions of CMake<3.12
cf272dbd2 Merge pull request #15 from borglab/feature/utils
ffc9cc4f7 new utils to reduce boilerplate
20e8e8b7a Merge pull request #11 from borglab/feature/package
04b844bd6 use new version of FindPython and be consistent
3f9d7a32a Merge pull request #13 from borglab/add_license
c791075a6 Add LICENSE
517b67c46 correct working directory for setup.py
1b22b47ae move matlab.h to root directory
37b407214 Proper source directory path for use in other projects
61696dd5d configure PybindWrap within the cmake directory
1b91fc9af add config file so we can use find_package
a1e6f4f53 small typo
da9f351be updated README and housekeeping
64b8f78d5 files needed to allow for packaging
bddda7f54 package structure

git-subtree-dir: wrap
git-subtree-split: 09f8bbf7172ba8b1bd3d2484795743f16e1a5893
2021-01-04 13:11:36 -05:00
Fan Jiang 16418e2fa6 Squashed 'wrap/' changes from 2192b194e..dfa624e77
dfa624e77 Merge pull request #9 from borglab/fix/serialization
7849665a7 Fix serialization

git-subtree-dir: wrap
git-subtree-split: dfa624e77e24ce3391d23c614d732fc81b4e6193
2020-10-07 02:29:41 -04:00
Fan Jiang f9e7c7d942 Squashed 'wrap/' changes from 5e1373486..2192b194e
2192b194e Merge pull request #8 from borglab/fix/serialization
3a3461a35 Fix test
ce3d5c35d Fix serialization

git-subtree-dir: wrap
git-subtree-split: 2192b194edc35142e529adcf50ed5e6803d48975
2020-10-07 01:42:57 -04:00
Varun Agrawal f79a1fb2b3 Squashed 'wrap/' changes from 314b121fd..5e1373486
5e1373486 Merge pull request #7 from varunagrawal/fix/matlab-wrapper-templates
db647232d support for This with multiple templates

git-subtree-dir: wrap
git-subtree-split: 5e1373486d5d9ba0827aab20ca3ea1083e24b3da
2020-09-25 20:59:12 -04:00
Varun Agrawal cd210573ae Squashed 'wrap/' changes from 49d831588..314b121fd
314b121fd Merge pull request #6 from varunagrawal/feature/pybind-upgrade
5e49bb867 Merge commit '62e790da1cc53cb9910ac5271a3514d88562bdce' into feature/docstring
62e790da1 Squashed 'pybind11/' changes from 441e777..d3c999c
e51526702 Merge pull request #5 from varunagrawal/feature/docstring
f503ddb2d document use_boost
2bb7158fc complete arguments documentation for pybind_wrap function

git-subtree-dir: wrap
git-subtree-split: 314b121fd4017338a3a6833728cd646d8ff5be12
2020-09-16 18:03:25 -04:00
Fan Jiang dc9ed2bfbd Squashed 'wrap/' changes from 21ee82f75..49d831588
49d831588 Disable verbose

git-subtree-dir: wrap
git-subtree-split: 49d83158872a0897e65fe99aa36353f7a54472c7
2020-08-17 17:17:56 -04:00
Fan Jiang 8e2d5a10e4 Squashed 'wrap/' content from commit 21ee82f75
git-subtree-dir: wrap
git-subtree-split: 21ee82f7542033a9a91891669490da0e364a357b
2020-08-17 14:44:43 -04:00