durable_rules 0.34.11 → 0.34.12

Sign up to get free protection for your applications and to get access to all the features.
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