On this page:
log
node
edge
remove-node
remove-edge
aggregate
timeline
assert
same?

2 Medic Tracing

 (require medic/trace) package: medic

procedure

(log datum)  void?

  datum : any/c
(log form v ...)  void?
  form : string?
  v : any/c
(log v ...)  void?
  v : any/c
Adds a log entry in the Log pane. For the latter log form, the log entry is a string form with ~a replaced by the corresponding value among vs. The number of ~as in form must be the same as the number of vs. Examples are as follows:
(log "Hello World")
(log "x = ~a, y = ~a" x y)

procedure

(node v [node-label color])  void?

  v : any/c
  node-label : any/c = ""
  color : (or/c string? #f) = #f
Adds a node to the Graph pane. The optional arguments node-label and color specify node properties. If node is called multiple times for the same v, only one node corresponding to v is shown in the Graph pane.

procedure

(edge from    
  to    
  [edge-label    
  color    
  from-label    
  to-label])  void?
  from : any/c
  to : any/c
  edge-label : any/c = ""
  color : (or/c string? #f) = #f
  from-label : any/c = ""
  to-label : any/c = ""
Generates an edge in the Graph pane connecting from from to to. The optional arguments edge-label, from-label, and to-label set the label properties of the edge and two connected nodes. The color of the arrow head of the edge is specified by color. When color is #f, it uses the default gray color. When there exists no node associated with from or to, edge creates a new node for it first and then adds an edge.

procedure

(remove-node v)  void?

  v : any/c
Removes a node.

procedure

(remove-edge from to)  void?

  from : any/c
  to : any/c
Removes an edge.

procedure

(aggregate v ...)  void?

  v : any/c
Adds an aggregate entry in the Aggregate pane, which groups a sequence of vs together.

procedure

(timeline v)  void?

  v : any/c
Adds a timeline entry in the Timeline pane, with a sequence of the value of v ordered in time.

procedure

(assert pred)  void?

  pred : boolean?
Adds a timeline entry in the Timeline pane, where the violations of the invariant pred are highlighted in red color.

procedure

(same? v)  void?

  v : any/c
Adds a timeline entry in the Timeline pane. It checks whether the value of v changes over time where v can be a primitive data type such as a number, string, or symbol or a compound data type including a pair, vector, hash table, structure, and class. For a compound data type, a change to an instance of the data type is defined as a change to any part of an instance of the data type. A change to an object of a class is defined to be a change to any of the object’s inherited, private, or public member fields.