class Sequel::Postgres::JSONTableOp::ColumnDSL
Class used to evaluate json_table blocks and nested blocks
Attributes
Return array of column information recorded for the instance
Public Class Methods
Source
# File lib/sequel/extensions/pg_json_ops.rb 1187 def self.columns(&block) 1188 new(&block).columns.freeze 1189 end
Source
# File lib/sequel/extensions/pg_json_ops.rb 1191 def initialize(&block) 1192 @columns = [] 1193 instance_exec(&block) 1194 end
Public Instance Methods
Source
# File lib/sequel/extensions/pg_json_ops.rb 1217 def Bignum(name, opts=OPTS) 1218 @columns << [:column, name, :Bignum, opts].freeze 1219 end
Include a bigint column
Source
# File lib/sequel/extensions/pg_json_ops.rb 1202 def column(name, type, opts=OPTS) 1203 @columns << [:column, name, type, opts].freeze 1204 end
Include a regular column with the given type
Source
# File lib/sequel/extensions/pg_json_ops.rb 1207 def exists(name, type, opts=OPTS) 1208 @columns << [:exists, name, type, opts].freeze 1209 end
Include an EXISTS column with the given type
Source
# File lib/sequel/extensions/pg_json_ops.rb 1212 def nested(path, &block) 1213 @columns << [:nested, path, ColumnDSL.columns(&block)].freeze 1214 end
Include a nested set of columns at the given path.
Source
# File lib/sequel/extensions/pg_json_ops.rb 1197 def ordinality(name) 1198 @columns << [:ordinality, name].freeze 1199 end
Include a FOR ORDINALITY column