durable_rules 0.34.11 → 0.34.12

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. checksums.yaml +4 -4
  2. data/src/rules/events.c +28 -0
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1a1c33ac9771e6fd5a65c237fa9ec44043ee2efa
4
- data.tar.gz: 92da33c1378bccefc450cf31d0bbff11301fa2e8
3
+ metadata.gz: 96c1f2afb98c1df6d0297230468d406c8c134760
4
+ data.tar.gz: d004d9fa926a1af9df3604cd3b814cb6a9828ad5
5
5
  SHA512:
6
- metadata.gz: e1557c00a12d9eff3c8d4d0b35c0e6efacf2928f2e1435eb873978e279af3a2f6f9f3b33d82bae98a2a10607469bf218ec942cc6a106f13cc5115d3c12ddb429
7
- data.tar.gz: def1bedb13771e6f5546c5043933019cb36f1706293eb8afd79d97a05803dad5366765e085d87098aaa271a4d2e7b5834aeb261aed8bfad84f2b89f7b4893ec8
6
+ metadata.gz: 11f6a6c1d0585ddbf7856dd24ae954a321559f66e80539b703f123d7df23be09bafb18cd09108dcf05c54a259664d4d2184acb25c35a94c437ca169af6d4ba56
7
+ data.tar.gz: c3360b78961a621f179998fa0a4dad77ba106978ee0bfee52a65211d9919a5860323684c4c0d82719e9afa6ea784af920229029cea553fc662ee93634440c0f4
data/src/rules/events.c CHANGED
@@ -19,18 +19,27 @@
19
19
  #define OP_BOOL_INT 0x0402
20
20
  #define OP_BOOL_DOUBLE 0x0403
21
21
  #define OP_BOOL_STRING 0x0401
22
+ #define OP_BOOL_NIL 0x0407
22
23
  #define OP_INT_BOOL 0x0204
23
24
  #define OP_INT_INT 0x0202
24
25
  #define OP_INT_DOUBLE 0x0203
25
26
  #define OP_INT_STRING 0x0201
27
+ #define OP_INT_NIL 0x0207
26
28
  #define OP_DOUBLE_BOOL 0x0304
27
29
  #define OP_DOUBLE_INT 0x0302
28
30
  #define OP_DOUBLE_DOUBLE 0x0303
29
31
  #define OP_DOUBLE_STRING 0x0301
32
+ #define OP_DOUBLE_NIL 0x0307
30
33
  #define OP_STRING_BOOL 0x0104
31
34
  #define OP_STRING_INT 0x0102
32
35
  #define OP_STRING_DOUBLE 0x0103
33
36
  #define OP_STRING_STRING 0x0101
37
+ #define OP_STRING_NIL 0x0107
38
+ #define OP_NIL_BOOL 0x0704
39
+ #define OP_NIL_INT 0x0702
40
+ #define OP_NIL_DOUBLE 0x0703
41
+ #define OP_NIL_STRING 0x0701
42
+ #define OP_NIL_NIL 0x0707
34
43
 
35
44
  typedef struct actionContext {
36
45
  unsigned long stateVersion;
@@ -865,6 +874,25 @@ static unsigned int isMatch(ruleset *tree,
865
874
  rightProperty->valueLength,
866
875
  alphaOp);
867
876
  break;
877
+ case OP_BOOL_NIL:
878
+ case OP_INT_NIL:
879
+ case OP_DOUBLE_NIL:
880
+ case OP_STRING_NIL:
881
+ if (alphaOp == OP_NEQ) {
882
+ *propertyMatch = 1;
883
+ } else {
884
+ *propertyMatch = 0;
885
+ }
886
+
887
+ break;
888
+ case OP_NIL_NIL:
889
+ if (alphaOp == OP_EQ) {
890
+ *propertyMatch = 1;
891
+ } else {
892
+ *propertyMatch = 0;
893
+ }
894
+
895
+ break;
868
896
  }
869
897
 
870
898
  if (releaseRightState) {
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: durable_rules
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.34.11
4
+ version: 0.34.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jesus Ruiz
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-09-19 00:00:00.000000000 Z
11
+ date: 2016-09-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake