   ^{:doc "The current context object to operate on."}
   *context*)
 
-(defn- context?
-  "Determines whether the argument is an instance of Context."
+(defn context?
+  "Predict to determine if the is an instance of Context."
   [x]
   (instance? Context x))
 
-(defn- within-with-context?
-  "Ensures that the function is within a valid with-context form."
+(defn has-*context*?
+  "Tests that the caller has a valid binding for *context*."
   []
   (and (bound? #'*context*)
        (context? *context*)))

  ([context id-or-name & args]
   {:pre  [(or (and (context? context)
                    (resolvable? id-or-name))
               (and (within-with-context?)
                    (resolvable? context)))]
    :post [(string? %)]}
   (if (instance? Context context)

  be an integer ID or a keyword name for the desired layout.  If within a
  with-context form, the context may be omitted."
  ([id-or-name]
   {:pre  [(has-*context*?)
           (resolvable? id-or-name)]
    :post [(instance? android.view.View %)]}
   (get-layout *context* id-or-name))
