From 7ec8511995a5f5eec47766065d8aa9dba7d6b325 Mon Sep 17 00:00:00 2001 From: Mitzi Morris Date: Mon, 27 Apr 2020 19:27:34 -0400 Subject: [PATCH] scrape, format functions signatures from Rmd --- extract_function_sigs.py | 58 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 extract_function_sigs.py diff --git a/extract_function_sigs.py b/extract_function_sigs.py new file mode 100644 index 000000000..41f35b69b --- /dev/null +++ b/extract_function_sigs.py @@ -0,0 +1,58 @@ +#!/usr/bin/env python +""" +Extract function signatures from html comments in markdown. +""" + +import glob +import os +import os.path +import sys +import contextlib + + +@contextlib.contextmanager +def pushd(new_dir): + previous_dir = os.getcwd() + os.chdir(new_dir) + yield + os.chdir(previous_dir) + + +def main(): + if len(sys.argv) > 2: + stan_major = int(sys.argv[1]) + stan_minor = int(sys.argv[2]) + else: + print('Expecting 2 arguments version numbers') + sys.exit(1) + + sigs = set() + ref_dir = os.path.join('src', 'functions-reference') + with pushd(ref_dir): + for file in glob.glob('*.Rmd'): + print(file) + with open(file) as rmd_file: + lines = rmd_file.readlines() + for line in lines: + if line.startswith('