MCPcopy Create free account
hub / github.com/ajitpratap0/GoSQLX / Example_reservedVsNonReserved

Function Example_reservedVsNonReserved

pkg/sql/keywords/example_test.go:133–164  ·  view source on GitHub ↗

Example_reservedVsNonReserved demonstrates distinction between reserved and non-reserved keywords.

()

Source from the content-addressed store, hash-verified

131
132// Example_reservedVsNonReserved demonstrates distinction between reserved and non-reserved keywords.
133func Example_reservedVsNonReserved() {
134 kw := keywords.New(keywords.DialectGeneric, true)
135
136 // Reserved keywords (cannot be used as identifiers)
137 reserved := []string{"SELECT", "FROM", "WHERE", "JOIN"}
138 fmt.Println("Reserved keywords:")
139 for _, word := range reserved {
140 if kw.IsReserved(word) {
141 fmt.Printf(" - %s\n", word)
142 }
143 }
144
145 // Non-reserved keywords (window functions - can be used as identifiers in some contexts)
146 nonReserved := []string{"ROW_NUMBER", "RANK", "DENSE_RANK"}
147 fmt.Println("Non-reserved keywords:")
148 for _, word := range nonReserved {
149 if kw.IsKeyword(word) && !kw.IsReserved(word) {
150 fmt.Printf(" - %s\n", word)
151 }
152 }
153
154 // Output:
155 // Reserved keywords:
156 // - SELECT
157 // - FROM
158 // - WHERE
159 // - JOIN
160 // Non-reserved keywords:
161 // - ROW_NUMBER
162 // - RANK
163 // - DENSE_RANK
164}
165
166// Example_dialectComparison demonstrates differences between SQL dialects.
167func Example_dialectComparison() {

Callers

nothing calls this directly

Calls 3

NewFunction · 0.92
IsReservedMethod · 0.80
IsKeywordMethod · 0.45

Tested by

no test coverage detected