Implementation of TypeID in Lua
at main 3.5 kB view raw
1[ 2 { 3 "name": "prefix-uppercase", 4 "typeid": "PREFIX_00000000000000000000000000", 5 "description": "The prefix should be lowercase with no uppercase letters" 6 }, 7 { 8 "name": "prefix-numeric", 9 "typeid": "12345_00000000000000000000000000", 10 "description": "The prefix can't have numbers, it needs to be alphabetic" 11 }, 12 { 13 "name": "prefix-period", 14 "typeid": "pre.fix_00000000000000000000000000", 15 "description": "The prefix can't have symbols, it needs to be alphabetic" 16 }, 17 { 18 "name": "prefix-non-ascii", 19 "typeid": "préfix_00000000000000000000000000", 20 "description": "The prefix can only have ascii letters" 21 }, 22 { 23 "name": "prefix-spaces", 24 "typeid": " prefix_00000000000000000000000000", 25 "description": "The prefix can't have any spaces" 26 }, 27 { 28 "name": "prefix-64-chars", 29 "typeid": "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijkl_00000000000000000000000000", 30 "description": "The prefix can't be 64 characters, it needs to be 63 characters or less" 31 }, 32 { 33 "name": "separator-empty-prefix", 34 "typeid": "_00000000000000000000000000", 35 "description": "If the prefix is empty, the separator should not be there" 36 }, 37 { 38 "name": "separator-empty", 39 "typeid": "_", 40 "description": "A separator by itself should not be treated as the empty string" 41 }, 42 { 43 "name": "suffix-short", 44 "typeid": "prefix_1234567890123456789012345", 45 "description": "The suffix can't be 25 characters, it needs to be exactly 26 characters" 46 }, 47 { 48 "name": "suffix-long", 49 "typeid": "prefix_123456789012345678901234567", 50 "description": "The suffix can't be 27 characters, it needs to be exactly 26 characters" 51 }, 52 { 53 "name": "suffix-spaces", 54 "typeid": "prefix_1234567890123456789012345 ", 55 "description": "The suffix can't have any spaces" 56 }, 57 { 58 "name": "suffix-uppercase", 59 "typeid": "prefix_0123456789ABCDEFGHJKMNPQRS", 60 "description": "The suffix should be lowercase with no uppercase letters" 61 }, 62 { 63 "name": "suffix-hyphens", 64 "typeid": "prefix_123456789-123456789-123456", 65 "description": "The suffix can't have any hyphens" 66 }, 67 { 68 "name": "suffix-wrong-alphabet", 69 "typeid": "prefix_ooooooiiiiiiuuuuuuulllllll", 70 "description": "The suffix should only have letters from the spec's alphabet" 71 }, 72 { 73 "name": "suffix-ambiguous-crockford", 74 "typeid": "prefix_i23456789ol23456789oi23456", 75 "description": "The suffix should not have any ambiguous characters from the crockford encoding" 76 }, 77 { 78 "name": "suffix-hyphens-crockford", 79 "typeid": "prefix_123456789-0123456789-0123456", 80 "description": "The suffix can't ignore hyphens as in the crockford encoding" 81 }, 82 { 83 "name": "suffix-overflow", 84 "typeid": "prefix_8zzzzzzzzzzzzzzzzzzzzzzzzz", 85 "description": "The suffix should encode at most 128-bits" 86 }, 87 { 88 "name": "prefix-underscore-start", 89 "typeid": "_prefix_00000000000000000000000000", 90 "description": "The prefix can't start with an underscore" 91 }, 92 { 93 "name": "prefix-underscore-end", 94 "typeid": "prefix__00000000000000000000000000", 95 "description": "The prefix can't end with an underscore" 96 }, 97 { 98 "name": "empty", 99 "typeid": "", 100 "description": "The empty string is not a valid typeid" 101 }, 102 { 103 "name": "prefix-empty", 104 "typeid": "prefix_", 105 "description": "The suffix can't be the empty string" 106 } 107]