MySQL 8.3.0
Source Code Documentation
pfs_name.h
Go to the documentation of this file.
1/* Copyright (c) 2021, 2023, Oracle and/or its affiliates.
2
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License, version 2.0,
5 as published by the Free Software Foundation.
6
7 This program is also distributed with certain software (including
8 but not limited to OpenSSL) that is licensed under separate terms,
9 as designated in a particular file or component or in included license
10 documentation. The authors of MySQL hereby grant you an additional
11 permission to link the program and your derivative works with the
12 separately licensed software that they have included with MySQL.
13
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License, version 2.0, for more details.
18
19 You should have received a copy of the GNU General Public License
20 along with this program; if not, write to the Free Software
21 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
22
23#ifndef PFS_NAME_H
24#define PFS_NAME_H
25
26/**
27 @file storage/perfschema/pfs_name.h
28 Object names (declarations).
29*/
30
31#include <assert.h>
32#include <string.h>
33
34#include "my_hostname.h" // HOSTNAME_LENGTH
35#include "my_inttypes.h"
37#include "mysql_com.h" // NAME_LEN
38
39/* Not used yet. */
40#define ROLENAME_CHAR_LENGTH 32
41#define ROLENAME_LENGTH (ROLENAME_CHAR_LENGTH * SYSTEM_CHARSET_MBMAXLEN)
42
43struct CHARSET_INFO;
44class Field;
45
46template <int max_length>
48 public:
50
51 PFS_any_name(const PFS_any_name &other) {
52 assert(other.m_length <= max_length);
53
54 if (0 < other.m_length && other.m_length <= max_length) {
55 m_length = other.m_length;
56 memcpy(m_data, other.m_data, m_length);
57 } else {
58 m_length = 0;
59 }
60 }
61
63 assert(other.m_length <= max_length);
64
65 if (0 < other.m_length && other.m_length <= max_length) {
66 m_length = other.m_length;
67 memcpy(m_data, other.m_data, m_length);
68 } else {
69 m_length = 0;
70 }
71 return *this;
72 }
73
74 void reset() { m_length = 0; }
75
76 void set(const char *str, size_t len) {
77 assert(len <= max_length);
78
79 if (0 < len && len <= max_length) {
80 m_length = len;
81 memcpy(m_data, str, len);
82 } else {
83 m_length = 0;
84 }
85 }
86
87 void casedn(const CHARSET_INFO *cs) {
88 /*
89 Conversion in place:
90 - the string is not NUL terminated.
91 - the result after conversion can be shorter.
92 */
93 char *data = reinterpret_cast<char *>(m_data);
94 m_length = cs->cset->casedn(cs, data, m_length, data, m_length);
95 assert(m_length <= max_length);
96 }
97
98 size_t length() const { return m_length; }
99
100 const char *ptr() const { return reinterpret_cast<const char *>(m_data); }
101
102 void hash(const CHARSET_INFO *cs, uint64 *nr1, uint64 *nr2) const {
103 cs->coll->hash_sort(cs, m_data, m_length, nr1, nr2);
104 }
105
106 int sort(const CHARSET_INFO *cs,
107 const PFS_any_name<max_length> *other) const {
108 int cmp;
109 cmp = my_strnncoll(cs, m_data, m_length, other->m_data, other->m_length);
110 return cmp;
111 }
112
113 uchar m_data[max_length];
114 size_t m_length;
115};
116
117template <int max_length>
119 public:
121 m_data = nullptr;
122 m_length = 0;
123 }
124
126 assert(other.m_length <= max_length);
127
128 if (0 < other.m_length && other.m_length <= max_length) {
129 m_data = other.m_data;
130 m_length = other.m_length;
131 } else {
132 m_data = nullptr;
133 m_length = 0;
134 }
135 }
136
138 const PFS_any_name_view<max_length> &other) {
139 assert(other.m_length <= max_length);
140
141 if (0 < other.m_length && other.m_length <= max_length) {
142 m_data = other.m_data;
143 m_length = other.m_length;
144 } else {
145 m_data = nullptr;
146 m_length = 0;
147 }
148 return *this;
149 }
150
151 void reset() {
152 m_data = nullptr;
153 m_length = 0;
154 }
155
156 void set_view(const char *str, size_t len) {
157 assert(len <= max_length);
158
159 if (0 < len && len <= max_length) {
160 m_data = reinterpret_cast<const uchar *>(str);
161 m_length = len;
162 } else {
163 m_data = nullptr;
164 m_length = 0;
165 }
166 }
167
168 size_t length() const { return m_length; }
169
170 const char *ptr() const { return reinterpret_cast<const char *>(m_data); }
171
172 void hash(const CHARSET_INFO *cs, uint64 *nr1, uint64 *nr2) const {
173 cs->coll->hash_sort(cs, m_data, m_length, nr1, nr2);
174 }
175
176 int sort(const CHARSET_INFO *cs,
177 const PFS_any_name_view<max_length> *other) const {
178 int cmp;
179 cmp = my_strnncoll(cs, m_data, m_length, other->m_data, other->m_length);
180 return cmp;
181 }
182
183 const uchar *m_data;
184 size_t m_length;
185};
186
188 public:
189 static void normalize(const char *name, size_t name_len, char *buffer,
190 size_t buffer_len, const char **normalized_name,
191 size_t *normalized_len);
192
193 void reset() { m_name.reset(); }
194
195 void set(const char *str, size_t len);
196
197 void hash(uint64 *nr1, uint64 *nr2) const { m_name.hash(get_cs(), nr1, nr2); }
198
199 int sort(const PFS_schema_name *other) const {
200 return m_name.sort(get_cs(), &other->m_name);
201 }
202
203 size_t length() const { return m_name.length(); }
204 const char *ptr() const { return m_name.ptr(); }
205 const CHARSET_INFO *charset() const { return get_cs(); }
206
207 private:
208 friend struct PFS_schema_name_view;
209
210 static const CHARSET_INFO *get_cs();
212};
213
215 public:
216 void reset() { m_name.reset(); }
217
218 void set_view(const char *str, size_t len) { m_name.set_view(str, len); }
219
220 void hash(uint64 *nr1, uint64 *nr2) const { m_name.hash(get_cs(), nr1, nr2); }
221
222 int sort(const PFS_schema_name_view *other) const {
223 return m_name.sort(get_cs(), &other->m_name);
224 }
225
226 size_t length() const { return m_name.length(); }
227 const char *ptr() const { return m_name.ptr(); }
228 const CHARSET_INFO *charset() const { return get_cs(); }
229
230 private:
231 static const CHARSET_INFO *get_cs();
233};
234
236 public:
237 static void normalize(const char *name, size_t name_len, char *buffer,
238 size_t buffer_len, const char **normalized_name,
239 size_t *normalized_len);
240
241 void reset() { m_name.reset(); }
242
243 void set(const char *str, size_t len);
244
245 void hash(uint64 *nr1, uint64 *nr2) const { m_name.hash(get_cs(), nr1, nr2); }
246
247 int sort(const PFS_table_name *other) const {
248 return m_name.sort(get_cs(), &other->m_name);
249 }
250
251 size_t length() const { return m_name.length(); }
252 const char *ptr() const { return m_name.ptr(); }
253 const CHARSET_INFO *charset() const { return get_cs(); }
254
255 private:
256 friend struct PFS_object_name;
257 friend struct PFS_table_name_view;
258
259 static const CHARSET_INFO *get_cs();
261};
262
264 public:
265 void reset() { m_name.reset(); }
266
267 void set_view(const char *str, size_t len) { m_name.set_view(str, len); }
268
269 void hash(uint64 *nr1, uint64 *nr2) const { m_name.hash(get_cs(), nr1, nr2); }
270
271 int sort(const PFS_table_name_view *other) const {
272 return m_name.sort(get_cs(), &other->m_name);
273 }
274
275 size_t length() const { return m_name.length(); }
276 const char *ptr() const { return m_name.ptr(); }
277 const CHARSET_INFO *charset() const { return get_cs(); }
278
279 private:
280 friend struct PFS_object_name_view;
281
282 static const CHARSET_INFO *get_cs();
284};
285
287 public:
288 static void normalize(const char *name, size_t name_len, char *buffer,
289 size_t buffer_len, const char **normalized_name,
290 size_t *normalized_len);
291
292 void reset() { m_name.reset(); }
293
294 void set(const char *str, size_t len);
295
296 void hash(uint64 *nr1, uint64 *nr2) const { m_name.hash(get_cs(), nr1, nr2); }
297
298 int sort(const PFS_routine_name *other) const {
299 return m_name.sort(get_cs(), &other->m_name);
300 }
301
302 size_t length() const { return m_name.length(); }
303 const char *ptr() const { return m_name.ptr(); }
304 const CHARSET_INFO *charset() const { return get_cs(); }
305
306 private:
307 friend struct PFS_object_name;
309
310 static const CHARSET_INFO *get_cs();
312};
313
315 public:
316 void reset() { m_name.reset(); }
317
318 void set_view(const char *str, size_t len) { m_name.set_view(str, len); }
319
320 void hash(uint64 *nr1, uint64 *nr2) const { m_name.hash(get_cs(), nr1, nr2); }
321
322 int sort(const PFS_routine_name_view *other) const {
323 return m_name.sort(get_cs(), &other->m_name);
324 }
325
326 size_t length() const { return m_name.length(); }
327 const char *ptr() const { return m_name.ptr(); }
328 const CHARSET_INFO *charset() const { return get_cs(); }
329
330 private:
331 friend struct PFS_object_name_view;
332
333 static const CHARSET_INFO *get_cs();
335};
336
338 public:
339 void reset() { m_name.reset(); }
340
341 void set_as_table(const char *str, size_t len);
342 void set_as_routine(const char *str, size_t len);
343
344 void hash_as_table(uint64 *nr1, uint64 *nr2) const {
345 m_name.hash(PFS_table_name::get_cs(), nr1, nr2);
346 }
347
348 int sort_as_table(const PFS_object_name *other) const {
349 return m_name.sort(PFS_table_name::get_cs(), &other->m_name);
350 }
351
352 void hash_as_routine(uint64 *nr1, uint64 *nr2) const {
353 m_name.hash(PFS_routine_name::get_cs(), nr1, nr2);
354 }
355
356 int sort_as_routine(const PFS_object_name *other) const {
357 return m_name.sort(PFS_routine_name::get_cs(), &other->m_name);
358 }
359
361 m_name = other.m_name;
362 return *this;
363 }
364
366 m_name = other.m_name;
367 return *this;
368 }
369
370 size_t length() const { return m_name.length(); }
371 const char *ptr() const { return m_name.ptr(); }
372
373 private:
374 friend struct PFS_object_name_view;
375
377};
378
380 public:
381 void reset() { m_name.reset(); }
382
383 void set_view_as_table(const char *str, size_t len) {
384 m_name.set_view(str, len);
385 }
386 void set_view_as_routine(const char *str, size_t len) {
387 m_name.set_view(str, len);
388 }
389
390 void hash_as_table(uint64 *nr1, uint64 *nr2) const {
391 m_name.hash(PFS_table_name_view::get_cs(), nr1, nr2);
392 }
393
394 int sort_as_table(const PFS_object_name_view *other) const {
395 return m_name.sort(PFS_table_name_view::get_cs(), &other->m_name);
396 }
397
398 void hash_as_routine(uint64 *nr1, uint64 *nr2) const {
399 m_name.hash(PFS_routine_name_view::get_cs(), nr1, nr2);
400 }
401
402 int sort_as_routine(const PFS_object_name_view *other) const {
403 return m_name.sort(PFS_routine_name_view::get_cs(), &other->m_name);
404 }
405
407 m_name = other.m_name;
408 return *this;
409 }
410
412 m_name = other.m_name;
413 return *this;
414 }
415
416 size_t length() const { return m_name.length(); }
417 const char *ptr() const { return m_name.ptr(); }
418
419 private:
421};
422
424 public:
425 static void normalize(const char *name, size_t name_len, char *buffer,
426 size_t buffer_len, const char **normalized_name,
427 size_t *normalized_len);
428
429 void reset() { m_name.reset(); }
430
431 void set(const char *str, size_t len);
432
433 void hash(uint64 *nr1, uint64 *nr2) const { m_name.hash(get_cs(), nr1, nr2); }
434
435 int sort(const PFS_index_name *other) const {
436 return m_name.sort(get_cs(), &other->m_name);
437 }
438
439 size_t length() const { return m_name.length(); }
440 const char *ptr() const { return m_name.ptr(); }
441 const CHARSET_INFO *charset() const { return get_cs(); }
442
443 private:
444 friend struct PFS_index_name_view;
445
446 static const CHARSET_INFO *get_cs();
448};
449
451 public:
452 void reset() { m_name.reset(); }
453
454 void set_view(const char *str, size_t len) { m_name.set_view(str, len); }
455
456 void hash(uint64 *nr1, uint64 *nr2) const { m_name.hash(get_cs(), nr1, nr2); }
457
458 int sort(const PFS_index_name_view *other) const {
459 return m_name.sort(get_cs(), &other->m_name);
460 }
461
462 size_t length() const { return m_name.length(); }
463 const char *ptr() const { return m_name.ptr(); }
464 const CHARSET_INFO *charset() const { return get_cs(); }
465
466 private:
467 static const CHARSET_INFO *get_cs();
469};
470
472 public:
473 void reset() { m_name.reset(); }
474
475 void set(const char *str, size_t len);
476
477 void hash(uint64 *nr1, uint64 *nr2) const { m_name.hash(get_cs(), nr1, nr2); }
478
479 int sort(const PFS_user_name *other) const {
480 return m_name.sort(get_cs(), &other->m_name);
481 }
482
483 size_t length() const { return m_name.length(); }
484 const char *ptr() const { return m_name.ptr(); }
485 const CHARSET_INFO *charset() const { return get_cs(); }
486
487 private:
488 friend struct PFS_user_name_view;
489
490 static const CHARSET_INFO *get_cs();
492};
493
495 public:
496 void reset() { m_name.reset(); }
497
498 void set_view(const char *str, size_t len) { m_name.set_view(str, len); }
499
500 void hash(uint64 *nr1, uint64 *nr2) const { m_name.hash(get_cs(), nr1, nr2); }
501
502 int sort(const PFS_user_name_view *other) const {
503 return m_name.sort(get_cs(), &other->m_name);
504 }
505
506 size_t length() const { return m_name.length(); }
507 const char *ptr() const { return m_name.ptr(); }
508 const CHARSET_INFO *charset() const { return get_cs(); }
509
510 private:
511 static const CHARSET_INFO *get_cs();
513};
514
516 public:
517 void reset() { m_name.reset(); }
518
519 void set(const char *str, size_t len);
520
521 void hash(uint64 *nr1, uint64 *nr2) const { m_name.hash(get_cs(), nr1, nr2); }
522
523 int sort(const PFS_host_name *other) const {
524 return m_name.sort(get_cs(), &other->m_name);
525 }
526
527 size_t length() const { return m_name.length(); }
528 const char *ptr() const { return m_name.ptr(); }
529 const CHARSET_INFO *charset() const { return get_cs(); }
530
531 private:
532 friend struct PFS_host_name_view;
533
534 static const CHARSET_INFO *get_cs();
536};
537
539 public:
540 void reset() { m_name.reset(); }
541
542 void set_view(const char *str, size_t len) { m_name.set_view(str, len); }
543
544 void hash(uint64 *nr1, uint64 *nr2) const { m_name.hash(get_cs(), nr1, nr2); }
545
546 int sort(const PFS_host_name_view *other) const {
547 return m_name.sort(get_cs(), &other->m_name);
548 }
549
550 size_t length() const { return m_name.length(); }
551 const char *ptr() const { return m_name.ptr(); }
552 const CHARSET_INFO *charset() const { return get_cs(); }
553
554 private:
555 static const CHARSET_INFO *get_cs();
557};
558
560 public:
561 void reset() { m_name.reset(); }
562
563 void set(const char *str, size_t len);
564
565 void hash(uint64 *nr1, uint64 *nr2) const { m_name.hash(get_cs(), nr1, nr2); }
566
567 int sort(const PFS_role_name *other) const {
568 return m_name.sort(get_cs(), &other->m_name);
569 }
570
571 size_t length() const { return m_name.length(); }
572 const char *ptr() const { return m_name.ptr(); }
573 const CHARSET_INFO *charset() const { return get_cs(); }
574
575 private:
576 friend struct PFS_role_name_view;
577
578 static const CHARSET_INFO *get_cs();
580};
581
583 public:
584 void reset() { m_name.reset(); }
585
586 void set_view(const char *str, size_t len) { m_name.set_view(str, len); }
587
588 void hash(uint64 *nr1, uint64 *nr2) const { m_name.hash(get_cs(), nr1, nr2); }
589
590 int sort(const PFS_role_name_view *other) const {
591 return m_name.sort(get_cs(), &other->m_name);
592 }
593
594 size_t length() const { return m_name.length(); }
595 const char *ptr() const { return m_name.ptr(); }
596 const CHARSET_INFO *charset() const { return get_cs(); }
597
598 private:
599 static const CHARSET_INFO *get_cs();
601};
602
604 public:
605 void reset() { m_name.reset(); }
606
607 void set(const char *str, size_t len);
608
609 void hash(uint64 *nr1, uint64 *nr2) const { m_name.hash(get_cs(), nr1, nr2); }
610
611 int sort(const PFS_file_name *other) const {
612 return m_name.sort(get_cs(), &other->m_name);
613 }
614
615 size_t length() const { return m_name.length(); }
616 const char *ptr() const { return m_name.ptr(); }
617 const CHARSET_INFO *charset() const { return get_cs(); }
618
619 private:
620 friend struct PFS_file_name_view;
621
622 static const CHARSET_INFO *get_cs();
624};
625
627 public:
628 void reset() { m_name.reset(); }
629
630 void set_view(const char *str, size_t len) { m_name.set_view(str, len); }
631
632 void hash(uint64 *nr1, uint64 *nr2) const { m_name.hash(get_cs(), nr1, nr2); }
633
634 int sort(const PFS_file_name_view *other) const {
635 return m_name.sort(get_cs(), &other->m_name);
636 }
637
638 size_t length() const { return m_name.length(); }
639 const char *ptr() const { return m_name.ptr(); }
640 const CHARSET_INFO *charset() const { return get_cs(); }
641
642 private:
643 static const CHARSET_INFO *get_cs();
645};
646
647#endif
Definition: field.h:574
static int cmp(Bigint *a, Bigint *b)
Definition: dtoa.cc:1059
A better implementation of the UNIX ctype(3) library.
int my_strnncoll(const CHARSET_INFO *cs, const uint8_t *a, size_t a_length, const uint8_t *b, size_t b_length)
Definition: m_ctype.h:632
Common definition used by mysys, performance schema and server & client.
Some integer typedefs for easier portability.
unsigned char uchar
Definition: my_inttypes.h:51
uint64_t uint64
Definition: my_inttypes.h:68
Common definition between mysql server & client.
std::string str(const mysqlrouter::ConfigGenerator::Options::Endpoint &ep)
Definition: config_generator.cc:1065
Definition: commit_order_queue.h:33
mutable_buffer buffer(void *p, size_t n) noexcept
Definition: buffer.h:417
case opt name
Definition: sslopt-case.h:32
Definition: m_ctype.h:422
Definition: pfs_name.h:118
void reset()
Definition: pfs_name.h:151
void set_view(const char *str, size_t len)
Definition: pfs_name.h:156
PFS_any_name_view(const PFS_any_name_view &other)
Definition: pfs_name.h:125
size_t m_length
Definition: pfs_name.h:184
PFS_any_name_view< max_length > & operator=(const PFS_any_name_view< max_length > &other)
Definition: pfs_name.h:137
void hash(const CHARSET_INFO *cs, uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:172
size_t length() const
Definition: pfs_name.h:168
const char * ptr() const
Definition: pfs_name.h:170
PFS_any_name_view()
Definition: pfs_name.h:120
int sort(const CHARSET_INFO *cs, const PFS_any_name_view< max_length > *other) const
Definition: pfs_name.h:176
const uchar * m_data
Definition: pfs_name.h:183
Definition: pfs_name.h:47
int sort(const CHARSET_INFO *cs, const PFS_any_name< max_length > *other) const
Definition: pfs_name.h:106
void reset()
Definition: pfs_name.h:74
size_t m_length
Definition: pfs_name.h:114
PFS_any_name()
Definition: pfs_name.h:49
const char * ptr() const
Definition: pfs_name.h:100
void casedn(const CHARSET_INFO *cs)
Definition: pfs_name.h:87
void set(const char *str, size_t len)
Definition: pfs_name.h:76
PFS_any_name< max_length > & operator=(const PFS_any_name< max_length > &other)
Definition: pfs_name.h:62
size_t length() const
Definition: pfs_name.h:98
void hash(const CHARSET_INFO *cs, uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:102
uchar m_data[max_length]
Definition: pfs_name.h:113
PFS_any_name(const PFS_any_name &other)
Definition: pfs_name.h:51
Definition: pfs_name.h:626
static const CHARSET_INFO * get_cs()
Definition: pfs_name.cc:197
void hash(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:632
const CHARSET_INFO * charset() const
Definition: pfs_name.h:640
size_t length() const
Definition: pfs_name.h:638
void reset()
Definition: pfs_name.h:628
int sort(const PFS_file_name_view *other) const
Definition: pfs_name.h:634
PFS_any_name_view< FN_REFLEN > m_name
Definition: pfs_name.h:644
const char * ptr() const
Definition: pfs_name.h:639
void set_view(const char *str, size_t len)
Definition: pfs_name.h:630
Definition: pfs_name.h:603
void set(const char *str, size_t len)
Definition: pfs_name.cc:193
const CHARSET_INFO * charset() const
Definition: pfs_name.h:617
int sort(const PFS_file_name *other) const
Definition: pfs_name.h:611
const char * ptr() const
Definition: pfs_name.h:616
void reset()
Definition: pfs_name.h:605
size_t length() const
Definition: pfs_name.h:615
void hash(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:609
static const CHARSET_INFO * get_cs()
Definition: pfs_name.cc:195
PFS_any_name< FN_REFLEN > m_name
Definition: pfs_name.h:623
Definition: pfs_name.h:538
const char * ptr() const
Definition: pfs_name.h:551
PFS_any_name_view< HOSTNAME_LENGTH > m_name
Definition: pfs_name.h:556
void reset()
Definition: pfs_name.h:540
static const CHARSET_INFO * get_cs()
Definition: pfs_name.cc:181
int sort(const PFS_host_name_view *other) const
Definition: pfs_name.h:546
void hash(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:544
void set_view(const char *str, size_t len)
Definition: pfs_name.h:542
size_t length() const
Definition: pfs_name.h:550
const CHARSET_INFO * charset() const
Definition: pfs_name.h:552
Definition: pfs_name.h:515
static const CHARSET_INFO * get_cs()
Definition: pfs_name.cc:179
const CHARSET_INFO * charset() const
Definition: pfs_name.h:529
int sort(const PFS_host_name *other) const
Definition: pfs_name.h:523
PFS_any_name< HOSTNAME_LENGTH > m_name
Definition: pfs_name.h:535
const char * ptr() const
Definition: pfs_name.h:528
void reset()
Definition: pfs_name.h:517
void set(const char *str, size_t len)
Definition: pfs_name.cc:177
size_t length() const
Definition: pfs_name.h:527
void hash(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:521
Definition: pfs_name.h:450
size_t length() const
Definition: pfs_name.h:462
void set_view(const char *str, size_t len)
Definition: pfs_name.h:454
const char * ptr() const
Definition: pfs_name.h:463
static const CHARSET_INFO * get_cs()
Definition: pfs_name.cc:165
const CHARSET_INFO * charset() const
Definition: pfs_name.h:464
int sort(const PFS_index_name_view *other) const
Definition: pfs_name.h:458
PFS_any_name_view< NAME_LEN > m_name
Definition: pfs_name.h:468
void hash(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:456
void reset()
Definition: pfs_name.h:452
Definition: pfs_name.h:423
size_t length() const
Definition: pfs_name.h:439
static void normalize(const char *name, size_t name_len, char *buffer, size_t buffer_len, const char **normalized_name, size_t *normalized_len)
Definition: pfs_name.cc:148
void set(const char *str, size_t len)
Definition: pfs_name.cc:159
const char * ptr() const
Definition: pfs_name.h:440
void reset()
Definition: pfs_name.h:429
int sort(const PFS_index_name *other) const
Definition: pfs_name.h:435
void hash(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:433
PFS_any_name< NAME_LEN > m_name
Definition: pfs_name.h:447
const CHARSET_INFO * charset() const
Definition: pfs_name.h:441
static const CHARSET_INFO * get_cs()
Definition: pfs_name.cc:161
Definition: pfs_name.h:379
void reset()
Definition: pfs_name.h:381
int sort_as_routine(const PFS_object_name_view *other) const
Definition: pfs_name.h:402
void set_view_as_table(const char *str, size_t len)
Definition: pfs_name.h:383
int sort_as_table(const PFS_object_name_view *other) const
Definition: pfs_name.h:394
void hash_as_table(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:390
PFS_object_name_view & operator=(const PFS_routine_name_view &other)
Definition: pfs_name.h:406
size_t length() const
Definition: pfs_name.h:416
PFS_any_name_view< NAME_LEN > m_name
Definition: pfs_name.h:420
void set_view_as_routine(const char *str, size_t len)
Definition: pfs_name.h:386
void hash_as_routine(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:398
PFS_object_name_view & operator=(const PFS_table_name_view &other)
Definition: pfs_name.h:411
const char * ptr() const
Definition: pfs_name.h:417
Definition: pfs_name.h:337
int sort_as_routine(const PFS_object_name *other) const
Definition: pfs_name.h:356
void reset()
Definition: pfs_name.h:339
PFS_any_name< NAME_LEN > m_name
Definition: pfs_name.h:376
const char * ptr() const
Definition: pfs_name.h:371
PFS_object_name & operator=(const PFS_routine_name &other)
Definition: pfs_name.h:360
void set_as_table(const char *str, size_t len)
Definition: pfs_name.cc:135
PFS_object_name & operator=(const PFS_table_name &other)
Definition: pfs_name.h:365
size_t length() const
Definition: pfs_name.h:370
int sort_as_table(const PFS_object_name *other) const
Definition: pfs_name.h:348
void set_as_routine(const char *str, size_t len)
Definition: pfs_name.cc:144
void hash_as_routine(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:352
void hash_as_table(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:344
Definition: pfs_name.h:582
void hash(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:588
const char * ptr() const
Definition: pfs_name.h:595
size_t length() const
Definition: pfs_name.h:594
PFS_any_name_view< ROLENAME_LENGTH > m_name
Definition: pfs_name.h:600
void reset()
Definition: pfs_name.h:584
void set_view(const char *str, size_t len)
Definition: pfs_name.h:586
int sort(const PFS_role_name_view *other) const
Definition: pfs_name.h:590
const CHARSET_INFO * charset() const
Definition: pfs_name.h:596
static const CHARSET_INFO * get_cs()
Definition: pfs_name.cc:189
Definition: pfs_name.h:559
PFS_any_name< ROLENAME_LENGTH > m_name
Definition: pfs_name.h:579
void hash(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:565
int sort(const PFS_role_name *other) const
Definition: pfs_name.h:567
size_t length() const
Definition: pfs_name.h:571
void set(const char *str, size_t len)
Definition: pfs_name.cc:185
void reset()
Definition: pfs_name.h:561
const char * ptr() const
Definition: pfs_name.h:572
const CHARSET_INFO * charset() const
Definition: pfs_name.h:573
static const CHARSET_INFO * get_cs()
Definition: pfs_name.cc:187
Definition: pfs_name.h:314
int sort(const PFS_routine_name_view *other) const
Definition: pfs_name.h:322
const char * ptr() const
Definition: pfs_name.h:327
static const CHARSET_INFO * get_cs()
Definition: pfs_name.cc:130
void hash(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:320
void set_view(const char *str, size_t len)
Definition: pfs_name.h:318
void reset()
Definition: pfs_name.h:316
const CHARSET_INFO * charset() const
Definition: pfs_name.h:328
PFS_any_name_view< NAME_LEN > m_name
Definition: pfs_name.h:334
size_t length() const
Definition: pfs_name.h:326
Definition: pfs_name.h:286
void hash(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:296
const CHARSET_INFO * charset() const
Definition: pfs_name.h:304
static void normalize(const char *name, size_t name_len, char *buffer, size_t buffer_len, const char **normalized_name, size_t *normalized_len)
Definition: pfs_name.cc:111
void reset()
Definition: pfs_name.h:292
size_t length() const
Definition: pfs_name.h:302
PFS_any_name< NAME_LEN > m_name
Definition: pfs_name.h:311
const char * ptr() const
Definition: pfs_name.h:303
static const CHARSET_INFO * get_cs()
Definition: pfs_name.cc:126
int sort(const PFS_routine_name *other) const
Definition: pfs_name.h:298
void set(const char *str, size_t len)
Definition: pfs_name.cc:122
Definition: pfs_name.h:214
static const CHARSET_INFO * get_cs()
Definition: pfs_name.cc:75
void reset()
Definition: pfs_name.h:216
int sort(const PFS_schema_name_view *other) const
Definition: pfs_name.h:222
void set_view(const char *str, size_t len)
Definition: pfs_name.h:218
void hash(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:220
size_t length() const
Definition: pfs_name.h:226
PFS_any_name_view< NAME_LEN > m_name
Definition: pfs_name.h:232
const CHARSET_INFO * charset() const
Definition: pfs_name.h:228
const char * ptr() const
Definition: pfs_name.h:227
Definition: pfs_name.h:187
size_t length() const
Definition: pfs_name.h:203
void set(const char *str, size_t len)
Definition: pfs_name.cc:63
static const CHARSET_INFO * get_cs()
Definition: pfs_name.cc:71
const CHARSET_INFO * charset() const
Definition: pfs_name.h:205
void hash(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:197
int sort(const PFS_schema_name *other) const
Definition: pfs_name.h:199
const char * ptr() const
Definition: pfs_name.h:204
static void normalize(const char *name, size_t name_len, char *buffer, size_t buffer_len, const char **normalized_name, size_t *normalized_len)
Definition: pfs_name.cc:47
void reset()
Definition: pfs_name.h:193
PFS_any_name< NAME_LEN > m_name
Definition: pfs_name.h:211
Definition: pfs_name.h:263
static const CHARSET_INFO * get_cs()
Definition: pfs_name.cc:107
void reset()
Definition: pfs_name.h:265
int sort(const PFS_table_name_view *other) const
Definition: pfs_name.h:271
PFS_any_name_view< NAME_LEN > m_name
Definition: pfs_name.h:283
size_t length() const
Definition: pfs_name.h:275
void hash(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:269
const CHARSET_INFO * charset() const
Definition: pfs_name.h:277
void set_view(const char *str, size_t len)
Definition: pfs_name.h:267
const char * ptr() const
Definition: pfs_name.h:276
Definition: pfs_name.h:235
const CHARSET_INFO * charset() const
Definition: pfs_name.h:253
void reset()
Definition: pfs_name.h:241
PFS_any_name< NAME_LEN > m_name
Definition: pfs_name.h:260
const char * ptr() const
Definition: pfs_name.h:252
static void normalize(const char *name, size_t name_len, char *buffer, size_t buffer_len, const char **normalized_name, size_t *normalized_len)
Definition: pfs_name.cc:79
int sort(const PFS_table_name *other) const
Definition: pfs_name.h:247
void hash(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:245
void set(const char *str, size_t len)
Definition: pfs_name.cc:95
static const CHARSET_INFO * get_cs()
Definition: pfs_name.cc:103
size_t length() const
Definition: pfs_name.h:251
Definition: pfs_name.h:494
PFS_any_name_view< USERNAME_LENGTH > m_name
Definition: pfs_name.h:512
void reset()
Definition: pfs_name.h:496
void set_view(const char *str, size_t len)
Definition: pfs_name.h:498
const char * ptr() const
Definition: pfs_name.h:507
static const CHARSET_INFO * get_cs()
Definition: pfs_name.cc:173
const CHARSET_INFO * charset() const
Definition: pfs_name.h:508
size_t length() const
Definition: pfs_name.h:506
int sort(const PFS_user_name_view *other) const
Definition: pfs_name.h:502
void hash(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:500
Definition: pfs_name.h:471
const char * ptr() const
Definition: pfs_name.h:484
size_t length() const
Definition: pfs_name.h:483
void set(const char *str, size_t len)
Definition: pfs_name.cc:169
void reset()
Definition: pfs_name.h:473
int sort(const PFS_user_name *other) const
Definition: pfs_name.h:479
static const CHARSET_INFO * get_cs()
Definition: pfs_name.cc:171
PFS_any_name< USERNAME_LENGTH > m_name
Definition: pfs_name.h:491
const CHARSET_INFO * charset() const
Definition: pfs_name.h:485
void hash(uint64 *nr1, uint64 *nr2) const
Definition: pfs_name.h:477