Commits


Fiona La authored and Sutou Kouhei committed 93b192c7a6e
ARROW-15650: [MATLAB] Rename the MEX gateway function ## Overview The MATLAB Interface to Arrow contains a [MEX](https://mathworks.com/help/matlab/call-mex-files-1.html?s_tid=CRUX_lftnav) function named `mexfcn` to delegate MATLAB calls to C++ functions that implement the functionality. When the interface is installed, the name of the MEX function, `mexfcn`, is on the global [MATLAB Search Path](https://mathworks.com/help/matlab/matlab_env/what-is-the-matlab-search-path.html). Because the previous name only captured that it is related to MEX functionality, it may cause conflicts with functions outside of the MATLAB Interface to Arrow. ## Implementation The following changes were made to address the potential naming conflict: - Rename the MEX function to `call`. - The name of the MEX file will be: `call.<mex-extension>` - Install the MEX function to the MATLAB package folder hierarchy: `+arrow/+cpp` within the installation directory. - Within MATLAB, the function is accessed by the following function signature: `arrow.cpp.call('<cpp-function-name>', <cpp-function-argument-1>, ..., <cpp-function-argument-N>)`. - Install all dependencies of the MEX function to the same package folder hierarchy. - Updated MATLAB tests to use the new function name. ## Testing - The change was qualified locally on Windows 10 (Ninja and Visual Studio), macOS 11.5 (Ninja and Xcode) for the following configurations: - Build both Arrow and GTest. - Use `ARROW_HOME` and `GTEST_ROOT`. - Additionally, the GitHub Actions CI passed for the change on Linux and macOS. ## Notes Thank you for working on this pull request with me, @kevingurney! Closes #12424 from lafiona/ARROW-15650 Lead-authored-by: Fiona La <fionala@mathworks.com> Co-authored-by: Kevin Gurney <kgurney@mathworks.com> Signed-off-by: Sutou Kouhei <kou@clear-code.com>