MCPcopy Create free account
hub / github.com/dolthub/doltgresql / RowIter

Method RowIter

server/node/show_sequences.go:59–84  ·  view source on GitHub ↗

RowIter implements the interface sql.ExecSourceRel.

(ctx *sql.Context, r sql.Row)

Source from the content-addressed store, hash-verified

57
58// RowIter implements the interface sql.ExecSourceRel.
59func (s *ShowSequences) RowIter(ctx *sql.Context, r sql.Row) (sql.RowIter, error) {
60 database := s.database
61 if database == "" {
62 database = ctx.GetCurrentDatabase()
63 if database == "" {
64 return nil, errors.New("no database selected (this is a bug)")
65 }
66 }
67
68 seqs, err := core.GetSequencesCollectionFromContext(ctx, database)
69 if err != nil {
70 return nil, err
71 }
72
73 var rows []sql.Row
74 err = seqs.IterateSequences(ctx, func(seq *sequences.Sequence) (stop bool, err error) {
75 name := seq.Name()
76 rows = append(rows, sql.Row{name.Schema, name.Name})
77 return false, nil
78 })
79 if err != nil {
80 return nil, err
81 }
82
83 return sql.RowsToRowIter(rows...), nil
84}
85
86// Schema implements the interface sql.ExecSourceRel.
87func (s *ShowSequences) Schema(ctx *sql.Context) sql.Schema {

Callers

nothing calls this directly

Calls 3

IterateSequencesMethod · 0.80
NameMethod · 0.65

Tested by

no test coverage detected