]> git.ozlabs.org Git - ccan/blobdiff - tools/ccanlint/ccanlint.h
ccanlint: Add -k option to keep results.
[ccan] / tools / ccanlint / ccanlint.h
index 876fc64c5484040afe0959492cdb028bd036dd55..ad38302861046cdab7475cbef03f22365b51db0f 100644 (file)
@@ -31,8 +31,6 @@ struct manifest {
 
        /* From tests/check_depends_exist.c */
        struct list_head dep_dirs;
 
        /* From tests/check_depends_exist.c */
        struct list_head dep_dirs;
-       /* From tests/check_depends_built.c */
-       struct list_head dep_objs;
 };
 
 struct manifest *get_manifest(const void *ctx, const char *dir);
 };
 
 struct manifest *get_manifest(const void *ctx, const char *dir);
@@ -40,6 +38,9 @@ struct manifest *get_manifest(const void *ctx, const char *dir);
 struct ccanlint {
        struct list_node list;
 
 struct ccanlint {
        struct list_node list;
 
+       /* More concise unique name of test. */
+       const char *key;
+
        /* Unique name of test */
        const char *name;
 
        /* Unique name of test */
        const char *name;
 
@@ -49,8 +50,10 @@ struct ccanlint {
        /* Can we run this test?  Return string explaining why, if not. */
        const char *(*can_run)(struct manifest *m);
 
        /* Can we run this test?  Return string explaining why, if not. */
        const char *(*can_run)(struct manifest *m);
 
-       /* If this returns non-NULL, it means the check failed. */
-       void *(*check)(struct manifest *m);
+       /* If this returns non-NULL, it means the check failed.
+        * keep is set if you should keep the results.
+        * If timeleft is set to 0, means it timed out. */
+       void *(*check)(struct manifest *m, bool keep, unsigned int *timeleft);
 
        /* The non-NULL return from check is passed to one of these: */
 
 
        /* The non-NULL return from check is passed to one of these: */
 
@@ -72,6 +75,8 @@ struct ccanlint {
        bool skip;
        /* Did we fail a dependency?  If so, skip and mark as fail. */
        bool skip_fail;
        bool skip;
        /* Did we fail a dependency?  If so, skip and mark as fail. */
        bool skip_fail;
+       /* Did the user want to keep these results? */
+       bool keep_results;
 };
 
 /* Ask the user a yes/no question: the answer is NO if there's an error. */
 };
 
 /* Ask the user a yes/no question: the answer is NO if there's an error. */