Sha256: f990255293f7259b17b1f3c129ea8ba093828465171870c99cb4737e39fefb80
Contents?: true
Size: 1.12 KB
Versions: 1
Compression:
Stored size: 1.12 KB
Contents
# frozen_string_literal: true require "bq_coaster" require "bq_coaster/generators/dataflow_converter/converter_renderer" module BqCoaster module Generators class DataflowConverter < Base class Context attr_reader :renderer def initialize(renderer) @renderer = renderer end def definitions renderer.definitions end def field_name(name) "#{prefix}.#{name}".sub(/src\./, "").gsub(/\./, "_") end def nested?(definition) !( definition.nil? || BqCoaster.edge_properties.any? { |c| definition.include?(c) } ) end def prefix renderer.prefix end def render_converter(name, definition) ConverterRenderer.new( definition, prefix: "#{prefix}.#{name}", indent: 1 ).render end def value(name, definition) if definition&.key?(:_convert) definition._convert % ["#{prefix}.#{name}"] else "#{prefix}.#{name}" end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
bq_coaster-0.2.0 | lib/bq_coaster/generators/dataflow_converter/context.rb |