Remove need for ARGUMENTS AND VALUES when there are none 0.3
authorFrank Duncan <frank@kank.net>
Mon, 30 May 2016 03:44:14 +0000 (22:44 -0500)
committerFrank Duncan <frank@kank.net>
Mon, 30 May 2016 03:46:55 +0000 (22:46 -0500)
README.md
resources/success1.lisp
resources/success1.md
src/main/docgen.asd
src/main/func.lisp

index 43f0db22ceb6b4fb504d6bb3ccb96bce79176a89..3d1ce91485879a947d8630bfbd384a46523117b5 100644 (file)
--- a/README.md
+++ b/README.md
@@ -4,7 +4,7 @@ Enforcement of documentation guidelines for my Common Lisp Projects, as well as
 
 I wish I had aspirations for this being some standard that someone else might follow, but realistically I'm just irritated at my own laziness with regard to documentation, so I wrote a solution.  The forceful nature of the validator is really just because I didn't want to write a smarter parser.  As an added bonus, all the docs now look the same when I look at them in the repl, so that's kind of nice.
 
-If you like, you can [download it](https://github.com/frankduncan/docgen/releases/download/0.2/docgen_0.2.tar.gz)
+If you like, you can [download it](https://github.com/frankduncan/docgen/releases/download/0.3/docgen_0.3.tar.gz)
 
 ## Usage
 
index 3e33e13298c4f1359678d21b5bbebeea2300d77b..28d492df7cdae39169d04b6a1798e03400858495 100644 (file)
@@ -7,7 +7,7 @@ to success1.md.")
  (:export
   #:*special-variable*
   #:test-condition
-  #:func-that-does-stuff #:noargs #:result-list #:has-no-examples
+  #:func-that-does-stuff #:noargs #:no-args-and-values #:result-list #:has-no-examples
   #:values-result #:has-optional #:has-keywords #:has-rest))
 
 (in-package #:success1)
@@ -108,6 +108,17 @@ EXAMPLES:
   (func-that-does-stuff) => (:failure \"path/to/error.lisp\" \"Error msg\" 20 0)"
   nil)
 
+(defun no-args-and-values ()
+ "NO-ARGS-AND-VALUES => RESULT
+
+  RESULT: :nothing
+
+DESCRIPTION:
+
+  RESULT-LIST runs all the things against a file and returns
+  as soon as the first func error is found."
+  nil)
+
 (defun has-no-examples ()
  "HAS-NO-EXAMPLES => RESULT
 
index 80c3c1ce406030bd17769fecaf1a694b8371375e..3c4b4f833c800e8857609690b098cb77603a588b 100644 (file)
@@ -12,6 +12,7 @@ This is should all get pulled in and the markdown.md should be equal to success1
 * **function [has-no-examples](#function-has-no-examples)** - _has-no-examples_ runs all the things against a file and returns as soon as the first func error is found.
 * **function [has-optional](#function-has-optional)** - _has-optional_ runs all the things against a file and returns as soon as the first func error is found.
 * **function [has-rest](#function-has-rest)** - _has-rest_ runs all the things against a file and returns as soon as the first func error is found.
+* **function [no-args-and-values](#function-no-args-and-values)** - _result_-LIST runs all the things against a file and returns as soon as the first func error is found.
 * **function [noargs](#function-noargs)** - _noargs_ runs all the things against a file and returns as soon as the first func error is found.
 * **function [result-list](#function-result-list)** - _result-list_ runs all the things against a file and returns as soon as the first func error is found.
 * **condition [test-condition](#condition-test-condition)** - Simple documentation.
@@ -153,6 +154,18 @@ _has-rest_ runs all the things against a file and returns as soon as the first f
 
 This second section uses _path_ and _x_ as something we should talk about, but doesn't use all the arguments (let's include _path_ here for fun)
 
+## Function **NO-ARGS-AND-VALUES**
+
+#### Syntax:
+
+**no-args-and-values** => _result_
+
+```result::= :nothing```  
+
+#### Description:
+
+_result_-LIST runs all the things against a file and returns as soon as the first func error is found.
+
 ## Function **NOARGS**
 
 #### Syntax:
index 3c63c458c6aacc007efde51c047a12fd25d9e66e..9b0858b218933e6807e99cf54cf1cf2f316a010b 100644 (file)
@@ -1,6 +1,6 @@
 (asdf:defsystem docgen
  :name "Documentation Generator"
- :version "0.2"
+ :version "0.3"
  :maintainer "Frank Duncan (frank@kank.com)"
  :author "Frank Duncan (frank@kank.com)"
  :serial t
index 68b05dcf7b473985df52b5c56450ea0f973f856e..45bd970eeab2e26a0aeb93f1e22ff07c2485462f 100644 (file)
      (append
       (when types (list types))
       (list
-       (parse-arguments-and-values args-to-be-defined)
+       (when args-to-be-defined (parse-arguments-and-values args-to-be-defined))
        (parse-description))
       (when (more) (list (parse-examples)))))))))
 
     (case (car type)
      (:list (format nil "(~{~(~A~)~^ ~})" (mapcar #'cadr (cadr type))))
      (:or (format nil "~{~(~A~)~^ | ~}" (mapcar #'cadr (cadr type))))
-     (:asterisk (format nil "~(~A~)*" (cadr (car (cadr type))))))))
+     (:asterisk (format nil "~(~A~)*" (cadr (car (cadr type)))))
+     (:symbol (format nil "~(~A~)" (cadr (car (cadr type))))))))
   (if (not types)
    ""
    (format nil "~{~A~%~}~%"
   (format nil "~A~A~A~A~A"
    (format-header (get-section :function))
    (format-types (get-section :types))
-   (format-args-and-values (get-section :arguments-and-values))
+   (if
+    (get-section :arguments-and-values)
+    (format-args-and-values (get-section :arguments-and-values))
+    "")
    (format-description (get-section :description))
    (format-examples (get-section :examples)))))