Skip to content

Commit

Permalink
added colors to simple defaults for liberator
Browse files Browse the repository at this point in the history
  • Loading branch information
tmcneill-reifyhealth committed Jul 5, 2019
1 parent f00c32c commit d2e59d8
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 56 deletions.
18 changes: 12 additions & 6 deletions src/liberator/graph.clj
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
(ns liberator.graph)
(ns liberator.graph
(:require [liberator.core :as liberator]))

(defn extract
([_ name then else] [name then else])
Expand All @@ -7,16 +8,21 @@
(defn clean-id [str]
(clojure.string/replace str #"[^a-zA-Z0-9_]+" ""))

(def default-style "color=\"#b2df8a\"")

(defn to-graph [[& args]]
(condp = (first args)
'defdecision
(let [[name then else] (apply extract args)]
(let [[name then else] (apply extract args)
default (get liberator/default-functions (keyword name))
then-default (if (true? default) default-style "")
else-default (if (false? default) default-style "")]
(format (str "\"%s\" [id = \"%s\"] \n "
"\"%s\" -> \"%s\" [label = \"true\", id = \"%s\"] \n"
"\"%s\" -> \"%s\" [label = \"false\", id = \"%s\"]\n")
"\"%s\" -> \"%s\" [label = \"true\", id = \"%s\" %s] \n"
"\"%s\" -> \"%s\" [label = \"false\", id = \"%s\" %s]\n")
name (clean-id name)
name then (clean-id (str name "_" then))
name else (clean-id (str name "_" else))))
name then (clean-id (str name "_" then)) then-default
name else (clean-id (str name "_" else)) else-default))
'defaction
(let [[_ name then] args]
(format (str "\"%s\"[shape=\"ellipse\" id = \"%s\"];\n"
Expand Down
Loading

0 comments on commit d2e59d8

Please sign in to comment.