Class: TypedRb::Model::GenSym

Inherits:
Object
  • Object
show all
Defined in:
lib/typed/model.rb

Constant Summary collapse

COUNTS =
{}

Class Method Summary collapse

Class Method Details

.next(x = '_gs') ⇒ Object



12
13
14
15
16
17
# File 'lib/typed/model.rb', line 12

def self.next(x = '_gs')
  count = COUNTS[x] || 1
  sym = "#{x}[[#{count}"
  COUNTS[x] = count + 1
  sym
end

.resetObject



8
9
10
# File 'lib/typed/model.rb', line 8

def self.reset
  COUNTS.clear
end

.resolve(gx) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/typed/model.rb', line 19

def self.resolve(gx)
  if gx.index('[[')
    orig, count = gx.split('[[')
    if count == '1'
      orig
    else
      gx
    end
  else
    gx
  end
end