1
2
3 package uuid
4
5 import (
6 "cuelang.org/go/internal/core/adt"
7 "cuelang.org/go/internal/pkg"
8 )
9
10 func init() {
11 pkg.Register("uuid", p)
12 }
13
14 var _ = adt.TopKind
15
16 var p = &pkg.Package{
17 Native: []*pkg.Builtin{{
18 Name: "Valid",
19 Params: []pkg.Param{
20 {Kind: adt.StringKind},
21 },
22 Result: adt.BottomKind,
23 Func: func(c *pkg.CallCtxt) {
24 s := c.String(0)
25 if c.Do() {
26 c.Ret = Valid(s)
27 }
28 },
29 }, {
30 Name: "Parse",
31 Params: []pkg.Param{
32 {Kind: adt.StringKind},
33 },
34 Result: adt.StringKind,
35 Func: func(c *pkg.CallCtxt) {
36 s := c.String(0)
37 if c.Do() {
38 c.Ret, c.Err = Parse(s)
39 }
40 },
41 }, {
42 Name: "ToString",
43 Params: []pkg.Param{
44 {Kind: adt.StringKind},
45 },
46 Result: adt.StringKind,
47 Func: func(c *pkg.CallCtxt) {
48 x := c.String(0)
49 if c.Do() {
50 c.Ret = ToString(x)
51 }
52 },
53 }, {
54 Name: "URN",
55 Params: []pkg.Param{
56 {Kind: adt.StringKind},
57 },
58 Result: adt.StringKind,
59 Func: func(c *pkg.CallCtxt) {
60 x := c.String(0)
61 if c.Do() {
62 c.Ret, c.Err = URN(x)
63 }
64 },
65 }, {
66 Name: "FromInt",
67 Params: []pkg.Param{
68 {Kind: adt.IntKind},
69 },
70 Result: adt.StringKind,
71 Func: func(c *pkg.CallCtxt) {
72 i := c.BigInt(0)
73 if c.Do() {
74 c.Ret, c.Err = FromInt(i)
75 }
76 },
77 }, {
78 Name: "ToInt",
79 Params: []pkg.Param{
80 {Kind: adt.StringKind},
81 },
82 Result: adt.IntKind,
83 Func: func(c *pkg.CallCtxt) {
84 x := c.String(0)
85 if c.Do() {
86 c.Ret = ToInt(x)
87 }
88 },
89 }, {
90 Name: "Variant",
91 Params: []pkg.Param{
92 {Kind: adt.StringKind},
93 },
94 Result: adt.IntKind,
95 Func: func(c *pkg.CallCtxt) {
96 x := c.String(0)
97 if c.Do() {
98 c.Ret, c.Err = Variant(x)
99 }
100 },
101 }, {
102 Name: "Version",
103 Params: []pkg.Param{
104 {Kind: adt.StringKind},
105 },
106 Result: adt.IntKind,
107 Func: func(c *pkg.CallCtxt) {
108 x := c.String(0)
109 if c.Do() {
110 c.Ret, c.Err = Version(x)
111 }
112 },
113 }, {
114 Name: "SHA1",
115 Params: []pkg.Param{
116 {Kind: adt.StringKind},
117 {Kind: adt.BytesKind | adt.StringKind},
118 },
119 Result: adt.StringKind,
120 Func: func(c *pkg.CallCtxt) {
121 space, data := c.String(0), c.Bytes(1)
122 if c.Do() {
123 c.Ret, c.Err = SHA1(space, data)
124 }
125 },
126 }, {
127 Name: "MD5",
128 Params: []pkg.Param{
129 {Kind: adt.StringKind},
130 {Kind: adt.BytesKind | adt.StringKind},
131 },
132 Result: adt.StringKind,
133 Func: func(c *pkg.CallCtxt) {
134 space, data := c.String(0), c.Bytes(1)
135 if c.Do() {
136 c.Ret, c.Err = MD5(space, data)
137 }
138 },
139 }},
140 CUE: `{
141 ns: {
142 DNS: "6ba7b810-9dad-11d1-80b4-00c04fd430c8"
143 URL: "6ba7b811-9dad-11d1-80b4-00c04fd430c8"
144 OID: "6ba7b812-9dad-11d1-80b4-00c04fd430c8"
145 X500: "6ba7b814-9dad-11d1-80b4-00c04fd430c8"
146 Nil: "00000000-0000-0000-0000-000000000000"
147 }
148 variants: {
149 Invalid: 0
150 RFC4122: 1
151 Reserved: 2
152 Microsoft: 3
153 Future: 4
154 }
155 }`,
156 }
157
View as plain text