@@ -39,78 +39,78 @@ func NewCreateView(
39
39
}
40
40
41
41
// View returns the view that will be created by this node.
42
- func (create * CreateView ) View () sql.View {
43
- return sql .NewView (create .Name , create .Child )
42
+ func (cv * CreateView ) View () sql.View {
43
+ return sql .NewView (cv .Name , cv .Child )
44
44
}
45
45
46
46
// Children implements the Node interface. It returns the Child of the
47
47
// CreateView node; i.e., the definition of the view that will be created.
48
- func (create * CreateView ) Children () []sql.Node {
49
- return []sql.Node {create .Child }
48
+ func (cv * CreateView ) Children () []sql.Node {
49
+ return []sql.Node {cv .Child }
50
50
}
51
51
52
52
// Resolved implements the Node interface. This node is resolved if and only if
53
53
// the database and the Child are both resolved.
54
- func (create * CreateView ) Resolved () bool {
55
- _ , ok := create .database .(sql.UnresolvedDatabase )
56
- return ! ok && create .Child .Resolved ()
54
+ func (cv * CreateView ) Resolved () bool {
55
+ _ , ok := cv .database .(sql.UnresolvedDatabase )
56
+ return ! ok && cv .Child .Resolved ()
57
57
}
58
58
59
59
// RowIter implements the Node interface. When executed, this function creates
60
60
// (or replaces) the view. It can error if the CraeteView's IsReplace member is
61
61
// set to false and the view already exists. The RowIter returned is always
62
62
// empty.
63
- func (create * CreateView ) RowIter (ctx * sql.Context ) (sql.RowIter , error ) {
64
- view := sql .NewView (create .Name , create .Child )
65
- registry := create .Catalog .ViewRegistry
63
+ func (cv * CreateView ) RowIter (ctx * sql.Context ) (sql.RowIter , error ) {
64
+ view := sql .NewView (cv .Name , cv .Child )
65
+ registry := cv .Catalog .ViewRegistry
66
66
67
- if create .IsReplace {
68
- err := registry .Delete (create .database .Name (), view .Name ())
67
+ if cv .IsReplace {
68
+ err := registry .Delete (cv .database .Name (), view .Name ())
69
69
if err != nil && ! sql .ErrNonExistingView .Is (err ) {
70
70
return sql .RowsToRowIter (), err
71
71
}
72
72
}
73
73
74
- return sql .RowsToRowIter (), registry .Register (create .database .Name (), view )
74
+ return sql .RowsToRowIter (), registry .Register (cv .database .Name (), view )
75
75
}
76
76
77
77
// Schema implements the Node interface. It always returns nil.
78
- func (create * CreateView ) Schema () sql.Schema { return nil }
78
+ func (cv * CreateView ) Schema () sql.Schema { return nil }
79
79
80
80
// String implements the fmt.Stringer interface, using sql.TreePrinter to
81
81
// generate the string.
82
- func (create * CreateView ) String () string {
82
+ func (cv * CreateView ) String () string {
83
83
pr := sql .NewTreePrinter ()
84
- _ = pr .WriteNode ("CreateView(%s)" , create .Name )
84
+ _ = pr .WriteNode ("CreateView(%s)" , cv .Name )
85
85
_ = pr .WriteChildren (
86
- fmt .Sprintf ("Columns (%s)" , strings .Join (create .Columns , ", " )),
87
- create .Child .String (),
86
+ fmt .Sprintf ("Columns (%s)" , strings .Join (cv .Columns , ", " )),
87
+ cv .Child .String (),
88
88
)
89
89
return pr .String ()
90
90
}
91
91
92
92
// WithChildren implements the Node interface. It only succeeds if the length
93
93
// of the specified children equals 1.
94
- func (create * CreateView ) WithChildren (children ... sql.Node ) (sql.Node , error ) {
94
+ func (cv * CreateView ) WithChildren (children ... sql.Node ) (sql.Node , error ) {
95
95
if len (children ) != 1 {
96
- return nil , sql .ErrInvalidChildrenNumber .New (create , len (children ), 1 )
96
+ return nil , sql .ErrInvalidChildrenNumber .New (cv , len (children ), 1 )
97
97
}
98
98
99
- newCreate := create
99
+ newCreate := cv
100
100
newCreate .Child = children [0 ]
101
101
return newCreate , nil
102
102
}
103
103
104
104
// Database implements the Databaser interface, and it returns the database in
105
105
// which CreateView will create the view.
106
- func (create * CreateView ) Database () sql.Database {
107
- return create .database
106
+ func (cv * CreateView ) Database () sql.Database {
107
+ return cv .database
108
108
}
109
109
110
110
// Database implements the Databaser interface, and it returns a copy of this
111
111
// node with the specified database.
112
- func (create * CreateView ) WithDatabase (database sql.Database ) (sql.Node , error ) {
113
- newCreate := * create
112
+ func (cv * CreateView ) WithDatabase (database sql.Database ) (sql.Node , error ) {
113
+ newCreate := * cv
114
114
newCreate .database = database
115
115
return & newCreate , nil
116
116
}
0 commit comments