svn_opt_impl.h revision 362181
1/** 2 * @copyright 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 11 * 12 * http://www.apache.org/licenses/LICENSE-2.0 13 * 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 19 * under the License. 20 * ==================================================================== 21 * @endcopyright 22 * 23 * @file svn_opt_impl.h 24 * @brief Option and argument parsing for Subversion command lines 25 * (common implementation) 26 * 27 * @warning This is a @b private implementation-specific header file. 28 * User code should include @ref svn_opt.h instead. 29 */ 30 31/* NOTE: 32 * This file *must not* include or depend on any other header except 33 * the C standard library headers. 34 */ 35 36#ifndef SVN_OPT_IMPL_H 37#define SVN_OPT_IMPL_H 38 39#ifdef __cplusplus 40extern "C" { 41#endif /* __cplusplus */ 42 43 44/** 45 * Various ways of specifying revisions. 46 * 47 * @note 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'. 52 */ 53/* NOTE: Update svnxx/revision.hpp when changing this enum. */ 54enum svn_opt_revision_kind { 55 /** No revision information given. */ 56 svn_opt_revision_unspecified, 57 58 /** revision given as number */ 59 svn_opt_revision_number, 60 61 /** revision given as date */ 62 svn_opt_revision_date, 63 64 /** rev of most recent change */ 65 svn_opt_revision_committed, 66 67 /** (rev of most recent change) - 1 */ 68 svn_opt_revision_previous, 69 70 /** .svn/entries current revision */ 71 svn_opt_revision_base, 72 73 /** current, plus local mods */ 74 svn_opt_revision_working, 75 76 /** repository youngest */ 77 svn_opt_revision_head 78 79 /* please update svn_opt__revision_to_string() when extending this enum */ 80}; 81 82#ifdef __cplusplus 83} 84#endif /* __cplusplus */ 85 86#endif /* SVN_OPT_IMPL_H */ 87