clipsruby 0.0.30 → 0.0.32
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 +4 -4
- data/README.md +26 -6
- data/ext/clipsruby/clipsruby.c +46 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d63c4466f611752b18eac8e195f3614784dd64b80ac007457fb550bc88847ee5
|
4
|
+
data.tar.gz: 353a3eb4fe11406b0b2b704a669b1933b0a3ec4c6c10c4b288cd0bf7b5a1fe58
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 88e76e4afa90cf21db3718ed033a2463c8f38f5f9c17d3e643b901d4f9d83b36ec0c8d904d311db96cdaf6935b9694982508eebb5326c1eb43977c80660b40d5
|
7
|
+
data.tar.gz: 48665d09ede14f7707abaf1ad38c8202c12ee0fe655402d257399379e074e367b2bd18b3e3bec704bc5cfdfb280286890f325360384eb5e1d2a93d5ae3c57b0e
|
data/README.md
CHANGED
@@ -424,6 +424,16 @@ CLIPS::Environment::Defrule.name(defrule)
|
|
424
424
|
defrule.name
|
425
425
|
```
|
426
426
|
|
427
|
+
### `CLIPS::Environment::Defrule.defmodule_name`
|
428
|
+
### `CLIPS::Environment::Defrule#defmodule_name`
|
429
|
+
|
430
|
+
Returns the name of the defmodule in which the defrule is defined
|
431
|
+
|
432
|
+
```ruby
|
433
|
+
CLIPS::Environment::Defrule.defmodule_name(defrule)
|
434
|
+
defrule.defmodule_name
|
435
|
+
```
|
436
|
+
|
427
437
|
### `CLIPS::Environment::Defrule.is_deletable`
|
428
438
|
### `CLIPS::Environment::Defrule#is_deletable`
|
429
439
|
|
@@ -542,11 +552,11 @@ symbol, string, or Defmodule object in order to only get Deftemplates
|
|
542
552
|
in that Defmodule. If you do not, it will return all Deftemplate names in all modules.
|
543
553
|
|
544
554
|
```ruby
|
545
|
-
CLIPS::Environment.get_deftemplate_list
|
555
|
+
CLIPS::Environment.get_deftemplate_list(env)
|
546
556
|
env.get_deftemplate_list
|
547
|
-
CLIPS::Environment.get_deftemplate_list(:MAIN)
|
557
|
+
CLIPS::Environment.get_deftemplate_list(env, :MAIN)
|
548
558
|
env.get_deftemplate_list(:MAIN)
|
549
|
-
CLIPS::Environment.get_deftemplate_list(defmodule)
|
559
|
+
CLIPS::Environment.get_deftemplate_list(env, defmodule)
|
550
560
|
env.get_deftemplate_list(defmodule)
|
551
561
|
```
|
552
562
|
|
@@ -558,14 +568,24 @@ symbol, string, or Defmodule object in order to only get Defrules
|
|
558
568
|
in that Defmodule. If you do not, it will return all Defrule names in all modules.
|
559
569
|
|
560
570
|
```ruby
|
561
|
-
CLIPS::Environment.get_defrule_list
|
571
|
+
CLIPS::Environment.get_defrule_list(env)
|
562
572
|
env.get_defrule_list
|
563
|
-
CLIPS::Environment.get_defrule_list(:MAIN)
|
573
|
+
CLIPS::Environment.get_defrule_list(env, :MAIN)
|
564
574
|
env.get_defrule_list(:MAIN)
|
565
|
-
CLIPS::Environment.get_defrule_list(defmodule)
|
575
|
+
CLIPS::Environment.get_defrule_list(env, defmodule)
|
566
576
|
env.get_defrule_list(defmodule)
|
567
577
|
```
|
568
578
|
|
579
|
+
### `CLIPS::Environment.get_defmodule_list`
|
580
|
+
### `CLIPS::Environment#get_defmodule_list`
|
581
|
+
|
582
|
+
Return an array of Defmodule names as symbols in the environment.
|
583
|
+
|
584
|
+
```ruby
|
585
|
+
CLIPS::Environment.get_defmodule_list(env)
|
586
|
+
env.get_defmodule_list
|
587
|
+
```
|
588
|
+
|
569
589
|
### `CLIPS::Environment.find_deftemplate`
|
570
590
|
### `CLIPS::Environment#find_deftemplate`
|
571
591
|
|
data/ext/clipsruby/clipsruby.c
CHANGED
@@ -110,6 +110,19 @@ static VALUE clips_environment_deftemplate_static_defmodule_name(VALUE self, VAL
|
|
110
110
|
return clips_environment_deftemplate_defmodule_name(rbDeftemplate);
|
111
111
|
}
|
112
112
|
|
113
|
+
static VALUE clips_environment_defrule_defmodule_name(VALUE self)
|
114
|
+
{
|
115
|
+
Defrule *rule;
|
116
|
+
|
117
|
+
TypedData_Get_Struct(self, Defrule, &Defrule_type, rule);
|
118
|
+
|
119
|
+
return ID2SYM(rb_intern(DefruleModule(rule)));
|
120
|
+
}
|
121
|
+
|
122
|
+
static VALUE clips_environment_defrule_static_defmodule_name(VALUE self, VALUE rbDefrule)
|
123
|
+
{
|
124
|
+
return clips_environment_defrule_defmodule_name(rbDefrule);
|
125
|
+
}
|
113
126
|
|
114
127
|
void environment_free(void *data)
|
115
128
|
{
|
@@ -2142,6 +2155,26 @@ static VALUE clips_environment_defmodule_static_get_defrule_list(VALUE self, VAL
|
|
2142
2155
|
return clips_environment_defmodule_get_defrule_list(rbDefmodule);
|
2143
2156
|
}
|
2144
2157
|
|
2158
|
+
static VALUE clips_environment_get_defmodule_list(VALUE self)
|
2159
|
+
{
|
2160
|
+
Environment *env;
|
2161
|
+
CLIPSValue value;
|
2162
|
+
VALUE out;
|
2163
|
+
|
2164
|
+
TypedData_Get_Struct(self, Environment, &Environment_type, env);
|
2165
|
+
|
2166
|
+
GetDefmoduleList(env, &value);
|
2167
|
+
|
2168
|
+
CLIPSValue_to_VALUE(&value, &out, &self);
|
2169
|
+
|
2170
|
+
return out;
|
2171
|
+
}
|
2172
|
+
|
2173
|
+
static VALUE clips_environment_static_get_defmodule_list(VALUE self, VALUE rbEnvironment)
|
2174
|
+
{
|
2175
|
+
return clips_environment_get_defmodule_list(rbEnvironment);
|
2176
|
+
}
|
2177
|
+
|
2145
2178
|
static VALUE clips_environment_defrule_name(VALUE self)
|
2146
2179
|
{
|
2147
2180
|
Defrule *defrule;
|
@@ -2159,10 +2192,18 @@ static VALUE clips_environment_defrule_static_name(VALUE self, VALUE rbDefrule)
|
|
2159
2192
|
static VALUE clips_environment_defrule_pp_form(VALUE self)
|
2160
2193
|
{
|
2161
2194
|
Defrule *defrule;
|
2195
|
+
const char *pp_form;
|
2162
2196
|
|
2163
2197
|
TypedData_Get_Struct(self, Defrule, &Defrule_type, defrule);
|
2164
2198
|
|
2165
|
-
|
2199
|
+
pp_form = DefrulePPForm(defrule);
|
2200
|
+
|
2201
|
+
if (pp_form == NULL) {
|
2202
|
+
rb_warn("defrule did not have pp_form. This can happen if the defrule was loaded from a binary file.");
|
2203
|
+
return Qnil;
|
2204
|
+
} else {
|
2205
|
+
return rb_str_new2(pp_form);
|
2206
|
+
}
|
2166
2207
|
}
|
2167
2208
|
|
2168
2209
|
static VALUE clips_environment_defrule_static_pp_form(VALUE self, VALUE rbDefrule)
|
@@ -3121,6 +3162,8 @@ void Init_clipsruby(void)
|
|
3121
3162
|
rb_define_method(rbEnvironment, "get_deftemplate_list", clips_environment_get_deftemplate_list, -1);
|
3122
3163
|
rb_define_singleton_method(rbEnvironment, "get_defrule_list", clips_environment_static_get_defrule_list, -1);
|
3123
3164
|
rb_define_method(rbEnvironment, "get_defrule_list", clips_environment_get_defrule_list, -1);
|
3165
|
+
rb_define_singleton_method(rbEnvironment, "get_defmodule_list", clips_environment_static_get_defmodule_list, 1);
|
3166
|
+
rb_define_method(rbEnvironment, "get_defmodule_list", clips_environment_get_defmodule_list, 0);
|
3124
3167
|
rb_define_singleton_method(rbEnvironment, "find_deffacts", clips_environment_static_find_deffacts, 2);
|
3125
3168
|
rb_define_method(rbEnvironment, "find_deffacts", clips_environment_find_deffacts, 1);
|
3126
3169
|
rb_define_singleton_method(rbEnvironment, "watch", clips_environment_static_watch, 2);
|
@@ -3286,6 +3329,8 @@ void Init_clipsruby(void)
|
|
3286
3329
|
rb_define_method(rbDefrule, "remove_break", clips_environment_defrule_remove_break, 0);
|
3287
3330
|
rb_define_singleton_method(rbDefrule, "salience", clips_environment_defrule_static_salience, 1);
|
3288
3331
|
rb_define_method(rbDefrule, "salience", clips_environment_defrule_salience, 0);
|
3332
|
+
rb_define_singleton_method(rbDefrule, "defmodule_name", clips_environment_defrule_static_defmodule_name, 1);
|
3333
|
+
rb_define_method(rbDefrule, "defmodule_name", clips_environment_defrule_defmodule_name, 0);
|
3289
3334
|
|
3290
3335
|
VALUE rbInstance = rb_define_class_under(rbEnvironment, "Instance", rb_cObject);
|
3291
3336
|
}
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: clipsruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.32
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ryan Johnston
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-09-
|
11
|
+
date: 2024-09-25 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Calling the CLIPS programming language from within Ruby
|
14
14
|
email: mrryanjohnston@gmail.com
|