.. _program_listing_file_include_rmw_validate_namespace.h: Program Listing for File validate_namespace.h ============================================= |exhale_lsh| :ref:`Return to documentation for file ` (``include/rmw/validate_namespace.h``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp // Copyright 2017 Open Source Robotics Foundation, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. #ifndef RMW__VALIDATE_NAMESPACE_H_ #define RMW__VALIDATE_NAMESPACE_H_ #ifdef __cplusplus extern "C" { #endif #include "rmw/macros.h" #include "rmw/types.h" #include "rmw/validate_full_topic_name.h" #define RMW_NAMESPACE_VALID 0 #define RMW_NAMESPACE_INVALID_IS_EMPTY_STRING 1 #define RMW_NAMESPACE_INVALID_NOT_ABSOLUTE 2 #define RMW_NAMESPACE_INVALID_ENDS_WITH_FORWARD_SLASH 3 #define RMW_NAMESPACE_INVALID_CONTAINS_UNALLOWED_CHARACTERS 4 #define RMW_NAMESPACE_INVALID_CONTAINS_REPEATED_FORWARD_SLASH 5 #define RMW_NAMESPACE_INVALID_NAME_TOKEN_STARTS_WITH_NUMBER 6 #define RMW_NAMESPACE_INVALID_TOO_LONG 7 // An additional 2 characters are reserved for the shortest possible topic, e.g. '/X'. #define RMW_NAMESPACE_MAX_LENGTH (RMW_TOPIC_MAX_NAME_LENGTH - 2U) RMW_PUBLIC RMW_WARN_UNUSED rmw_ret_t rmw_validate_namespace( const char * namespace_, int * validation_result, size_t * invalid_index); RMW_PUBLIC RMW_WARN_UNUSED rmw_ret_t rmw_validate_namespace_with_size( const char * namespace_, size_t namespace_length, int * validation_result, size_t * invalid_index); RMW_PUBLIC RMW_WARN_UNUSED const char * rmw_namespace_validation_result_string(int validation_result); #ifdef __cplusplus } #endif #endif // RMW__VALIDATE_NAMESPACE_H_