3 * ====================================================================
4 * Licensed to the Apache Software Foundation (ASF) under one
5 * or more contributor license agreements. See the NOTICE file
6 * distributed with this work for additional information
7 * regarding copyright ownership. The ASF licenses this file
8 * to you under the Apache License, Version 2.0 (the
9 * "License"); you may not use this file except in compliance
10 * with the License. You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing,
15 * software distributed under the License is distributed on an
16 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17 * KIND, either express or implied. See the License for the
18 * specific language governing permissions and limitations
20 * ====================================================================
23 * @file svn_opt_impl.h
24 * @brief Option and argument parsing for Subversion command lines
25 * (common implementation)
27 * @warning This is a @b private implementation-specific header file.
28 * User code should include @ref svn_opt.h instead.
32 * This file *must not* include or depend on any other header except
33 * the C standard library headers.
36 #ifndef SVN_OPT_IMPL_H
37 #define SVN_OPT_IMPL_H
41 #endif /* __cplusplus */
45 * Various ways of specifying revisions.
48 * In contexts where local mods are relevant, the `working' kind
49 * refers to the uncommitted "working" revision, which may be modified
50 * with respect to its base revision. In other contexts, `working'
51 * should behave the same as `committed' or `current'.
53 /* NOTE: Update svnxx/revision.hpp when changing this enum. */
54 enum svn_opt_revision_kind {
55 /** No revision information given. */
56 svn_opt_revision_unspecified,
58 /** revision given as number */
59 svn_opt_revision_number,
61 /** revision given as date */
62 svn_opt_revision_date,
64 /** rev of most recent change */
65 svn_opt_revision_committed,
67 /** (rev of most recent change) - 1 */
68 svn_opt_revision_previous,
70 /** .svn/entries current revision */
71 svn_opt_revision_base,
73 /** current, plus local mods */
74 svn_opt_revision_working,
76 /** repository youngest */
79 /* please update svn_opt__revision_to_string() when extending this enum */
84 #endif /* __cplusplus */
86 #endif /* SVN_OPT_IMPL_H */