summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorDavid Schleef <ds@schleef.org>2007-06-11 20:06:08 +0000
committerDavid Schleef <ds@schleef.org>2007-06-11 20:06:08 +0000
commite6ccdbd1a8ad100b3000cfc53423ddf4110e52f2 (patch)
treef2166a1f7902b1efa7b9c3c6182c9a453977b65a /examples
parent510db2fe8d3615d5bbb1c00a8ab64063108f1da2 (diff)
downloadliboil-e6ccdbd1a8ad100b3000cfc53423ddf4110e52f2.tar.gz
* examples/oil-suggest-lib:
* examples/oil-suggest.c: Add suggester for all the symbols in a library.
Diffstat (limited to 'examples')
-rwxr-xr-xexamples/oil-suggest-lib5
-rw-r--r--examples/oil-suggest.c25
2 files changed, 27 insertions, 3 deletions
diff --git a/examples/oil-suggest-lib b/examples/oil-suggest-lib
new file mode 100755
index 0000000..cb0b030
--- /dev/null
+++ b/examples/oil-suggest-lib
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+./oil-suggest $(nm -u $1 |grep oil_function_class|sed 's/.*U oil_function_class_ptr_//')
+
+
diff --git a/examples/oil-suggest.c b/examples/oil-suggest.c
index 3cb51d2..7f199da 100644
--- a/examples/oil-suggest.c
+++ b/examples/oil-suggest.c
@@ -89,8 +89,8 @@ oil_suggest_class (OilFunctionClass *klass, int verbose)
x = get_speed_score (klass);
- if (x == 1.0) {
- printf("%s\n", klass->name);
+ if (x < 20.0) {
+ printf("%s %g\n", klass->name, x);
}
}
@@ -109,12 +109,31 @@ oil_suggest_all (void)
}
}
+static void
+oil_suggest (const char *s)
+{
+ OilFunctionClass *klass = oil_class_get (s);
+
+ if (klass) {
+ oil_suggest_class (klass, 0);
+ }
+}
+
int
main (int argc, char *argv[])
{
+ int i;
+
oil_init();
- oil_suggest_all ();
+ if (argc == 1) {
+ oil_suggest_all ();
+ return 0;
+ }
+
+ for(i=1;i<argc;i++){
+ oil_suggest (argv[i]);
+ }
return 0;
}