behave_fun 0.2.2 → 0.2.3

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ce5e58d3df23a0b699c5222b14f1bb4e698c2f2f757bf7fe370aecf6d8315b22
4
- data.tar.gz: 960139813ac13062eae21946513ec86c1fd5da6c2eacd0b30fd531f070d0f69b
3
+ metadata.gz: e526abe95ba12a46398d54816db835b06d7fd637fa12d8532717de73d859b706
4
+ data.tar.gz: 4b8de5a4c3f9614e432c0e4a975f96a7b461e6b4be726f817b6a44ac2188e75e
5
5
  SHA512:
6
- metadata.gz: e88433826074ef43d7a0295bbb439b8ef90148c03ca194fa1ffabd1eb566a22bd89b21eb985c422a5985070b6e42acc0d2148c3cddb98375232c20db3b356aec
7
- data.tar.gz: 15f899d76051ac06fba5172c1dd2f0a6e2d11c57d5663a2ee79afbca7ee941a6c9f889f0da94d0ec5eedb51167f7558c60b9e164cbec83b072da4c230c877d72
6
+ metadata.gz: ce0fb474121dd2a64da415a002a0d02f20cba724def89a3cac06dd05cc1601cb4eb467da4293f748e4bd4985ef25a50b79d864633ec7834e348e33107a69bfb3
7
+ data.tar.gz: 89c72baf8266aad35d239ea8f56e8aff7a2b71ff22533440b771cf98ed90c5c3dd351f5967c560c0a69514d422d0a0ad00f3a5972fb4fdf67578e8d1dfb7c53d
@@ -1,8 +1,9 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- behave_fun (0.2.2)
4
+ behave_fun (0.2.3)
5
5
  activesupport (~> 6.0.0)
6
+ dry-types (~> 1.4.0)
6
7
  zeitwerk (~> 2.3.0)
7
8
 
8
9
  GEM
@@ -16,6 +17,28 @@ GEM
16
17
  zeitwerk (~> 2.2, >= 2.2.2)
17
18
  concurrent-ruby (1.1.6)
18
19
  diff-lcs (1.3)
20
+ dry-configurable (0.11.5)
21
+ concurrent-ruby (~> 1.0)
22
+ dry-core (~> 0.4, >= 0.4.7)
23
+ dry-equalizer (~> 0.2)
24
+ dry-container (0.7.2)
25
+ concurrent-ruby (~> 1.0)
26
+ dry-configurable (~> 0.1, >= 0.1.3)
27
+ dry-core (0.4.9)
28
+ concurrent-ruby (~> 1.0)
29
+ dry-equalizer (0.3.0)
30
+ dry-inflector (0.2.0)
31
+ dry-logic (1.0.6)
32
+ concurrent-ruby (~> 1.0)
33
+ dry-core (~> 0.2)
34
+ dry-equalizer (~> 0.2)
35
+ dry-types (1.4.0)
36
+ concurrent-ruby (~> 1.0)
37
+ dry-container (~> 0.3)
38
+ dry-core (~> 0.4, >= 0.4.4)
39
+ dry-equalizer (~> 0.3)
40
+ dry-inflector (~> 0.1, >= 0.1.2)
41
+ dry-logic (~> 1.0, >= 1.0.2)
19
42
  i18n (1.8.2)
20
43
  concurrent-ruby (~> 1.0)
21
44
  minitest (5.14.1)
@@ -27,4 +27,5 @@ Gem::Specification.new do |spec|
27
27
 
28
28
  spec.add_dependency 'zeitwerk', '~> 2.3.0'
29
29
  spec.add_dependency 'activesupport', '~> 6.0.0'
30
+ spec.add_dependency 'dry-types', '~> 1.4.0'
30
31
  end
@@ -25,5 +25,13 @@ module BehaveFun
25
25
  def serializable_status_fields
26
26
  [:counter]
27
27
  end
28
+
29
+ def params=(params)
30
+ @params = ParamsSchema[params]
31
+ end
32
+
33
+ ParamsSchema = Types::Hash.schema(
34
+ times: Types::Coercible::Integer.optional.default(nil)
35
+ )
28
36
  end
29
37
  end
@@ -19,5 +19,13 @@ module BehaveFun
19
19
  def serializable_status_fields
20
20
  [:counter]
21
21
  end
22
+
23
+ def params=(params)
24
+ @params = ParamsSchema[params]
25
+ end
26
+
27
+ ParamsSchema = Types::Hash.schema(
28
+ duration: Types::Coercible::Integer
29
+ )
22
30
  end
23
31
  end
@@ -2,11 +2,11 @@ module BehaveFun
2
2
  class Task
3
3
  include TaskSerializer
4
4
 
5
- attr_accessor :control, :guard
6
- attr_reader :context, :children, :params, :status
5
+ attr_accessor :control, :guard, :params
6
+ attr_reader :context, :children, :status
7
7
 
8
8
  def initialize(params = {})
9
- @params = params
9
+ self.params = params
10
10
  @children = []
11
11
  @status = :fresh
12
12
  end
@@ -0,0 +1,7 @@
1
+ require 'dry-types'
2
+
3
+ module BehaveFun
4
+ module Types
5
+ include Dry.Types()
6
+ end
7
+ end
@@ -1,3 +1,3 @@
1
1
  module BehaveFun
2
- VERSION = '0.2.2'
2
+ VERSION = '0.2.3'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: behave_fun
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - ayaya zhao
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-05-23 00:00:00.000000000 Z
11
+ date: 2020-05-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: zeitwerk
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: 6.0.0
41
+ - !ruby/object:Gem::Dependency
42
+ name: dry-types
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 1.4.0
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 1.4.0
41
55
  description: A behavior tree library for ruby.
42
56
  email:
43
57
  - ayaya.zhao@gmail.com
@@ -77,6 +91,7 @@ files:
77
91
  - lib/behave_fun/task_builder_factory.rb
78
92
  - lib/behave_fun/task_serializer.rb
79
93
  - lib/behave_fun/tree.rb
94
+ - lib/behave_fun/types.rb
80
95
  - lib/behave_fun/version.rb
81
96
  homepage: https://github.com/ayamomiji/behave_fun
82
97
  licenses: