swaf 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. data/lib/swaf.rb +10 -5
  2. data/lib/swaf/version.rb +1 -1
  3. metadata +46 -55
@@ -7,6 +7,9 @@ require "swaf/version"
7
7
  require "swaf/helper"
8
8
 
9
9
  class Swaf
10
+ class SwafError < ::StandardError; end
11
+ class ReplaceTargetNotFound < SwafError; end
12
+
10
13
  extend Forwardable
11
14
 
12
15
  def self.load(doc)
@@ -44,7 +47,7 @@ class Swaf
44
47
 
45
48
  def replace(params={})
46
49
  self.class.load(@tamperer.replace(@dumper.swf, params.inject([]) {|targets, (k, v)|
47
- targets << make_target(k, v)
50
+ targets.concat([*make_target(k, v)])
48
51
  }))
49
52
  end
50
53
 
@@ -55,18 +58,20 @@ class Swaf
55
58
  if value.kind_of?(Array) && value.size == 2 # movie-clip
56
59
  SwfRuby::SpriteReplaceTarget.build_list_by_instance_var_names(
57
60
  @dumper, key.to_s => value
58
- ).first
61
+ )
59
62
  else
60
- SwfRuby::AsVarReplaceTarget.build_by_var_name(@dumper, key.to_s).each {|t|
63
+ SwfRuby::AsVarReplaceTarget.build_by_var_name(@dumper, key.to_s).tap {|targets|
64
+ raise ReplaceTargetNotFound, key if targets.empty?
65
+ }.each {|t|
61
66
  t.str = value
62
- }.first
67
+ }
63
68
  end
64
69
  when Integer
65
70
  case value.first
66
71
  when :jpeg
67
72
  SwfRuby::Jpeg2ReplaceTarget.new(detect(key), value.last)
68
73
  when :gif, :png
69
- SwfRuby::Lossless2ReplaceTarget(detect(key), value.last)
74
+ SwfRuby::Lossless2ReplaceTarget.new(detect(key), value.last)
70
75
  end
71
76
  end
72
77
  end
@@ -2,7 +2,7 @@ class Swaf
2
2
  VERSION = [
3
3
  major = 0,
4
4
  minor = 1,
5
- patch = 0,
5
+ patch = 1,
6
6
  ].join('.')
7
7
  end
8
8
 
metadata CHANGED
@@ -1,72 +1,67 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: swaf
3
- version: !ruby/object:Gem::Version
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.1
4
5
  prerelease:
5
- version: 0.1.0
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - aereal
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
-
13
- date: 2011-06-07 00:00:00 +09:00
14
- default_executable:
15
- dependencies:
16
- - !ruby/object:Gem::Dependency
12
+ date: 2011-06-23 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
17
15
  name: bundler
18
- prerelease: false
19
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: &2169165900 !ruby/object:Gem::Requirement
20
17
  none: false
21
- requirements:
18
+ requirements:
22
19
  - - ~>
23
- - !ruby/object:Gem::Version
20
+ - !ruby/object:Gem::Version
24
21
  version: 1.0.0
25
22
  type: :development
26
- version_requirements: *id001
27
- - !ruby/object:Gem::Dependency
28
- name: rspec
29
23
  prerelease: false
30
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: *2169165900
25
+ - !ruby/object:Gem::Dependency
26
+ name: rspec
27
+ requirement: &2169165420 !ruby/object:Gem::Requirement
31
28
  none: false
32
- requirements:
29
+ requirements:
33
30
  - - ~>
34
- - !ruby/object:Gem::Version
31
+ - !ruby/object:Gem::Version
35
32
  version: 2.6.0
36
33
  type: :development
37
- version_requirements: *id002
38
- - !ruby/object:Gem::Dependency
39
- name: rake
40
34
  prerelease: false
41
- requirement: &id003 !ruby/object:Gem::Requirement
35
+ version_requirements: *2169165420
36
+ - !ruby/object:Gem::Dependency
37
+ name: rake
38
+ requirement: &2169164980 !ruby/object:Gem::Requirement
42
39
  none: false
43
- requirements:
40
+ requirements:
44
41
  - - ~>
45
- - !ruby/object:Gem::Version
42
+ - !ruby/object:Gem::Version
46
43
  version: 0.9.0
47
44
  type: :development
48
- version_requirements: *id003
49
- - !ruby/object:Gem::Dependency
50
- name: swf_ruby
51
45
  prerelease: false
52
- requirement: &id004 !ruby/object:Gem::Requirement
46
+ version_requirements: *2169164980
47
+ - !ruby/object:Gem::Dependency
48
+ name: swf_ruby
49
+ requirement: &2169164540 !ruby/object:Gem::Requirement
53
50
  none: false
54
- requirements:
55
- - - ">="
56
- - !ruby/object:Gem::Version
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
57
54
  version: 0.2.0
58
55
  type: :runtime
59
- version_requirements: *id004
56
+ prerelease: false
57
+ version_requirements: *2169164540
60
58
  description:
61
- email:
59
+ email:
62
60
  - trasty.loose@gmail.com
63
61
  executables: []
64
-
65
62
  extensions: []
66
-
67
63
  extra_rdoc_files: []
68
-
69
- files:
64
+ files:
70
65
  - .gitignore
71
66
  - .rspec
72
67
  - Gemfile
@@ -83,35 +78,31 @@ files:
83
78
  - spec/samples/replaced_as_var.swf
84
79
  - spec/swaf_spec.rb
85
80
  - swaf.gemspec
86
- has_rdoc: true
87
81
  homepage: https://github.com/aereal/swaf
88
82
  licenses: []
89
-
90
83
  post_install_message:
91
84
  rdoc_options: []
92
-
93
- require_paths:
85
+ require_paths:
94
86
  - lib
95
- required_ruby_version: !ruby/object:Gem::Requirement
87
+ required_ruby_version: !ruby/object:Gem::Requirement
96
88
  none: false
97
- requirements:
98
- - - ">="
99
- - !ruby/object:Gem::Version
100
- version: "0"
101
- required_rubygems_version: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - ! '>='
91
+ - !ruby/object:Gem::Version
92
+ version: '0'
93
+ required_rubygems_version: !ruby/object:Gem::Requirement
102
94
  none: false
103
- requirements:
104
- - - ">="
105
- - !ruby/object:Gem::Version
106
- version: "0"
95
+ requirements:
96
+ - - ! '>='
97
+ - !ruby/object:Gem::Version
98
+ version: '0'
107
99
  requirements: []
108
-
109
100
  rubyforge_project:
110
- rubygems_version: 1.6.2
101
+ rubygems_version: 1.8.5
111
102
  signing_key:
112
103
  specification_version: 3
113
104
  summary: more user-friendly interface for swf_ruby
114
- test_files:
105
+ test_files:
115
106
  - spec/samples/another_fig.jpg
116
107
  - spec/samples/fig.jpg
117
108
  - spec/samples/jpeg_replaced.swf