/** * @copyright * ==================================================================== * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you 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. * ==================================================================== * @endcopyright * * @file svn_path.h * @brief A path manipulation library * * All incoming and outgoing paths are non-NULL and in UTF-8, unless * otherwise documented. * * No result path ever ends with a separator, no matter whether the * path is a file or directory, because we always canonicalize() it. * * Nearly all the @c svn_path_xxx functions expect paths passed into * them to be in canonical form as defined by the Subversion path * library itself. The only functions which do *not* have such * expectations are: * * - @c svn_path_canonicalize() * - @c svn_path_is_canonical() * - @c svn_path_internal_style() * - @c svn_path_uri_encode() * * For the most part, we mean what most anyone would mean when talking * about canonical paths, but to be on the safe side, you must run * your paths through @c svn_path_canonicalize() before passing them to * other functions in this API. */ #ifndef SVN_PATH_H #define SVN_PATH_H #include #include #include #include "svn_types.h" #include "svn_string.h" #include "svn_dirent_uri.h" #ifdef __cplusplus extern "C" { #endif /* __cplusplus */