sfp 0.3.21 → 0.3.22

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. checksums.yaml +7 -0
  2. data/VERSION +1 -1
  3. data/lib/sfp/sas_translator.rb +10 -31
  4. metadata +20 -16
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 44ac56c90eaec6ecac630620c665b638f9ffab39
4
+ data.tar.gz: aac76d92cb369a72ad935ac24ca33b06a93aa117
5
+ SHA512:
6
+ metadata.gz: c629e6db9ab2eee74150378093b3890ce34697e6ab7a0480e34d2025eae72f5af4bfa5e17f834e90ef3cbbdafc7d8f54e043009a48e44d35b3273e013cc27cfb
7
+ data.tar.gz: 15e5d8e43c6c660ea6c2cfc4e8c47509714d111e95fad1b528e3bb27ec6a90a981bdfa22d45a5247d4ef3cb685be34b4a85c359890d8d5af950937281d15df66
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.21
1
+ 0.3.22
@@ -291,6 +291,7 @@ module Sfp
291
291
  # actions. Then reduce the size of their domain by 1 only i.e. the possible
292
292
  # value is only their initial value.
293
293
  # BUGGY! -- operator's effects may contain other object's variable
294
+ =begin
294
295
  def identify_immutable_variables
295
296
  def is_this(ref)
296
297
  ref.length > 7 and (ref[0,7] == '$.this.' or ref[0,7] == '$.self.')
@@ -324,6 +325,7 @@ module Sfp
324
325
  end
325
326
  end
326
327
  end
328
+ =end
327
329
 
328
330
  #####
329
331
  # Method for postprocessing simple global constraints
@@ -1786,7 +1788,6 @@ module Sfp
1786
1788
  if name[0,1] != '_'
1787
1789
  modified = false
1788
1790
  map.each { |k,v|
1789
- #puts k + ',' + name if v.is_a?(Sfp::Undefined) or v.is_a?(Sfp::Unknown)
1790
1791
  next if v.is_a?(Sfp::Undefined) or v.is_a?(Sfp::Unknown)
1791
1792
  if name == k
1792
1793
  obj[v] = value
@@ -1796,7 +1797,6 @@ module Sfp
1796
1797
  modified = true
1797
1798
  break
1798
1799
  elsif name.length > k.length and name[k.length,1] == '.' and name[0, k.length] == k
1799
- #next if v.is_a?(Sfp::Undefined) or v.is_a?(Sfp::Unknown)
1800
1800
  grounded = v + name[k.length, (name.length-k.length)]
1801
1801
  obj[grounded] = value
1802
1802
  obj.delete(name)
@@ -1819,9 +1819,11 @@ module Sfp
1819
1819
  value['_self'] = name if value.is_a?(Hash)
1820
1820
  end
1821
1821
  end
1822
- # TODO ----- HACK! -----
1822
+ # TODO
1823
+ # ----- HACK! -----
1824
+ # these lines should handle nested 'iterator'
1823
1825
  if obj.is_a?(Hash) and obj.isconstraint and obj['_type'] == 'iterator' and
1824
- value.is_a?(String) and value.isref and map.has_key?(value)
1826
+ value.is_a?(String) and value.isref and map.has_key?(value)
1825
1827
  obj[name] = value = map[value]
1826
1828
  #puts map[value].inspect
1827
1829
  #puts "==>> " + obj.ref.push(name)
@@ -2052,32 +2054,12 @@ module Sfp
2052
2054
  def dump(stream, root, variables)
2053
2055
  prevails = self.values.select { |p| p.post.nil? }
2054
2056
  preposts = self.values.select { |p| not p.post.nil? }
2055
- =begin
2056
- pre_lines = []
2057
- prevails.each do |p|
2058
- line = p.to_sas(root, variables)
2059
- return if line[-1] == ' '
2060
- pre_lines << line
2061
- end
2062
- prepost_lines = []
2063
- preposts.each do |p|
2064
- line = p.to_sas(root, variables, false)
2065
- return if line [-1] == ' '
2066
- prepost_lines << line
2067
- end
2068
- =end
2069
2057
 
2070
2058
  stream.write "begin_operator\n#{@name}"
2071
2059
  @params.each do |key,val|
2072
2060
  stream.write " #{key}=#{val}" if key != '$.this'
2073
2061
  end if @params.is_a?(Hash)
2074
2062
 
2075
- =begin
2076
- stream.write "\n#{pre_lines.length}"
2077
- stream.write "\n#{pre_lines.join("\n")}" if pre_lines.length > 0
2078
- stream.write "\n#{prepost_lines.length}\n"
2079
- stream.write "#{prepost_lines.join("\n")}\n" if prepost_lines.length > 0
2080
- =end
2081
2063
  stream.write "\n#{prevails.length}\n"
2082
2064
  prevails.each { |p| p.dump(stream, root, variables) }
2083
2065
 
@@ -2112,9 +2094,6 @@ module Sfp
2112
2094
  if not p['post'].nil?
2113
2095
  sfw['effect'][p['name']] = (p['post'].is_a?(Sfp::Null) ? nil : p['post'])
2114
2096
  end
2115
-
2116
- #sfw['condition'][ p['name'] ] = p['pre'] if p['pre'] != nil
2117
- #sfw['effect'][ p['name'] ] = p['post'] if p['post'] != nil
2118
2097
  end
2119
2098
  return sfw
2120
2099
  end
@@ -2240,10 +2219,10 @@ module Sfp
2240
2219
  post = Sfp::Null.new if @post.is_a?(Hash) and @post.isnull
2241
2220
 
2242
2221
  return {
2243
- 'name' => @var.name,
2244
- 'pre' => pre,
2245
- 'post' => post
2246
- }
2222
+ 'name' => @var.name,
2223
+ 'pre' => pre,
2224
+ 'post' => post
2225
+ }
2247
2226
  end
2248
2227
  end
2249
2228
 
metadata CHANGED
@@ -1,38 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sfp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.21
5
- prerelease:
4
+ version: 0.3.22
6
5
  platform: ruby
7
6
  authors:
8
7
  - Herry
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-11-27 00:00:00.000000000 Z
11
+ date: 2013-12-16 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: antlr3
16
- requirement: &6642880 !ruby/object:Gem::Requirement
17
- none: false
15
+ requirement: !ruby/object:Gem::Requirement
18
16
  requirements:
19
17
  - - ~>
20
18
  - !ruby/object:Gem::Version
21
19
  version: 1.10.0
22
20
  type: :runtime
23
21
  prerelease: false
24
- version_requirements: *6642880
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: 1.10.0
25
27
  - !ruby/object:Gem::Dependency
26
28
  name: rake
27
- requirement: &6642360 !ruby/object:Gem::Requirement
28
- none: false
29
+ requirement: !ruby/object:Gem::Requirement
29
30
  requirements:
30
- - - ! '>='
31
+ - - '>='
31
32
  - !ruby/object:Gem::Version
32
33
  version: '0'
33
34
  type: :development
34
35
  prerelease: false
35
- version_requirements: *6642360
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
36
41
  description: A Ruby API and script for SFP language parser
37
42
  email: herry13@gmail.com
38
43
  executables:
@@ -67,26 +72,25 @@ files:
67
72
  homepage: https://github.com/herry13/sfp-ruby
68
73
  licenses:
69
74
  - BSD
75
+ metadata: {}
70
76
  post_install_message:
71
77
  rdoc_options: []
72
78
  require_paths:
73
79
  - lib
74
80
  required_ruby_version: !ruby/object:Gem::Requirement
75
- none: false
76
81
  requirements:
77
- - - ! '>='
82
+ - - '>='
78
83
  - !ruby/object:Gem::Version
79
84
  version: '0'
80
85
  required_rubygems_version: !ruby/object:Gem::Requirement
81
- none: false
82
86
  requirements:
83
- - - ! '>='
87
+ - - '>='
84
88
  - !ruby/object:Gem::Version
85
89
  version: '0'
86
90
  requirements: []
87
91
  rubyforge_project: sfp
88
- rubygems_version: 1.8.11
92
+ rubygems_version: 2.1.10
89
93
  signing_key:
90
- specification_version: 3
94
+ specification_version: 4
91
95
  summary: SFP Parser
92
96
  test_files: []