Class used to evaluate json_table blocks and nested blocks
Attributes
columns | [R] |
Return array of column information recorded for the instance |
Public Class methods
columns(&block)
[show source]
# File lib/sequel/extensions/pg_json_ops.rb 1179 def self.columns(&block) 1180 new(&block).columns.freeze 1181 end
new(&block)
[show source]
# File lib/sequel/extensions/pg_json_ops.rb 1183 def initialize(&block) 1184 @columns = [] 1185 instance_exec(&block) 1186 end
Public Instance methods
Bignum(name, opts=OPTS)
Include a bigint column
[show source]
# File lib/sequel/extensions/pg_json_ops.rb 1209 def Bignum(name, opts=OPTS) 1210 @columns << [:column, name, :Bignum, opts].freeze 1211 end
column(name, type, opts=OPTS)
Include a regular column with the given type
[show source]
# File lib/sequel/extensions/pg_json_ops.rb 1194 def column(name, type, opts=OPTS) 1195 @columns << [:column, name, type, opts].freeze 1196 end
exists(name, type, opts=OPTS)
Include an EXISTS column with the given type
[show source]
# File lib/sequel/extensions/pg_json_ops.rb 1199 def exists(name, type, opts=OPTS) 1200 @columns << [:exists, name, type, opts].freeze 1201 end
nested(path, &block)
Include a nested set of columns at the given path.
[show source]
# File lib/sequel/extensions/pg_json_ops.rb 1204 def nested(path, &block) 1205 @columns << [:nested, path, ColumnDSL.columns(&block)].freeze 1206 end
ordinality(name)
Include a FOR ORDINALITY column
[show source]
# File lib/sequel/extensions/pg_json_ops.rb 1189 def ordinality(name) 1190 @columns << [:ordinality, name].freeze 1191 end