Skip to content

Commit 1eb4208

Browse files
Replace rclpyHandle with type stubs (#1326)
* Replace rclpyHandle with stubs Signed-off-by: Michael Carlstrom <[email protected]> * Rerun CI Signed-off-by: Michael Carlstrom <[email protected]> * Rerun CI Signed-off-by: Michael Carlstrom <[email protected]> --------- Signed-off-by: Michael Carlstrom <[email protected]> Co-authored-by: Shane Loretz <[email protected]>
1 parent 2949554 commit 1eb4208

File tree

3 files changed

+41
-13
lines changed

3 files changed

+41
-13
lines changed

rclpy/rclpy/impl/_rclpy_pybind11.pyi

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# Copyright 2024 Open Source Robotics Foundation, Inc.
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
from typing import Sequence
16+
17+
18+
def rclpy_remove_ros_args(pycli_args: Sequence[str]) -> list[str]: ...
19+
"""Remove ROS-specific arguments from argument vector."""
20+
21+
def rclpy_get_rmw_implementation_identifier() -> str: ...
22+
"""Retrieve the identifier for the active RMW implementation."""

rclpy/rclpy/impl/implementation_singleton.py

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -26,19 +26,7 @@
2626
# ...
2727
"""
2828

29-
30-
from typing import List, Protocol, Sequence
31-
3229
from rpyutils import import_c_library
3330
package = 'rclpy'
3431

35-
rclpy_implementation: 'rclpyHandle' = import_c_library('._rclpy_pybind11', package)
36-
37-
38-
class rclpyHandle(Protocol):
39-
40-
def rclpy_remove_ros_args(self, pycli_args: Sequence[str]) -> List[str]:
41-
...
42-
43-
def rclpy_get_rmw_implementation_identifier(self) -> str:
44-
...
32+
rclpy_implementation = import_c_library('._rclpy_pybind11', package)
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# Copyright 2024 Open Source Robotics Foundation, Inc.
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
16+
from rclpy.impl import _rclpy_pybind11
17+
18+
rclpy_implementation = _rclpy_pybind11

0 commit comments

Comments
 (0)