Module: AssOle::Snippets::Shared::ValueTable::Columns
- Defined in:
- lib/ass_ole/snippets/shared/value_table.rb
Class Method Summary collapse
- .make(vtable, columns, columns_with_types, ole_connector) ⇒ Object
- .to_columns_with_types(columns) ⇒ Object
- .type_desc(types, ole_connector) ⇒ Object
Class Method Details
.make(vtable, columns, columns_with_types, ole_connector) ⇒ Object
70 71 72 73 74 75 76 77 78 |
# File 'lib/ass_ole/snippets/shared/value_table.rb', line 70 def self.make(vtable, columns, columns_with_types, ole_connector) to_columns_with_types(columns).merge(columns_with_types) .each do |col, types| type_desc_ = type_desc(types, ole_connector) vtable.Columns.Add(col.to_s, type_desc_) if type_desc_ vtable.Columns.Add(col.to_s) unless type_desc_ end vtable.Columns end |
.to_columns_with_types(columns) ⇒ Object
87 88 89 90 91 92 93 |
# File 'lib/ass_ole/snippets/shared/value_table.rb', line 87 def self.to_columns_with_types(columns) r = {} columns.each do |col| r[col.to_sym] = nil end r end |
.type_desc(types, ole_connector) ⇒ Object
80 81 82 83 84 85 |
# File 'lib/ass_ole/snippets/shared/value_table.rb', line 80 def self.type_desc(types, ole_connector) return unless types types_ = types.clone types_ = types_.split(',') if types.is_a? String ole_connector.newObject('TypeDescription', types_.join(',')) end |