Google OR-Tools: ortools/base/path.h Source File

1

2

3

4

5

6

7

8

9

10

11

12

13

14#ifndef ORTOOLS_BASE_PATH_H_

15#define ORTOOLS_BASE_PATH_H_

16

17#include <initializer_list>

18#include <string>

19#include <utility>

20

21#include "absl/strings/string_view.h"

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48namespace file {

49

51

53 std::initializer_list<absl::string_view> paths);

54}

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82inline std::string JoinPath() { return std::string(); }

83inline std::string JoinPath(absl::string_view path) {

84 return std::string(path.data(), path.size());

85}

86std::string JoinPath(absl::string_view path1, absl::string_view path2);

87template <typename... T>

88inline std::string JoinPath(absl::string_view path1, absl::string_view path2,

89 absl::string_view path3, const T&... args) {

91 {path1, path2, path3, args...});

92}

93

94

95

96

97

98

99

100

101

102

103template <typename... T>

107

108

110

111

112

113std::string AddSlash(absl::string_view path);

114

115

116

117

118

119

120absl::string_view Dirname(absl::string_view path);

121

122

123

124

125

126std::pair<absl::string_view, absl::string_view> SplitPath(

127 absl::string_view path);

128

129

130

131

132

133

134absl::string_view Basename(absl::string_view path);

135

136

137

138absl::string_view Stem(absl::string_view path);

139

140

141

142absl::string_view Extension(absl::string_view path);

143

144

145

146

147

148

149

150

151

152

153

154

155

156

157

158

159

160

161

162

163

164

165std::string CleanPath(absl::string_view path);

166

167

168

170

171}

172

173#endif

std::string JoinPathImpl(bool honor_abs, std::initializer_list< absl::string_view > paths)

std::string AddSlash(absl::string_view path)

absl::string_view Extension(absl::string_view path)

std::string CleanPath(const absl::string_view unclean_path)

std::pair< absl::string_view, absl::string_view > SplitPath(absl::string_view path)

bool IsAbsolutePath(absl::string_view path)

absl::string_view Stem(absl::string_view path)

std::string JoinPath()

Definition path.h:82

absl::string_view Basename(absl::string_view path)

absl::string_view Dirname(absl::string_view path)

std::string CollapseSlashes(absl::string_view path)

std::string JoinPathRespectAbsolute(const T &... args)

Definition path.h:104