summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/cdoc/Doxyfile29
-rw-r--r--doc/cdoc/Makefile10
-rw-r--r--doc/cdoc/README31
-rwxr-xr-xdoc/cdoc/numpyfilter.py104
4 files changed, 0 insertions, 174 deletions
diff --git a/doc/cdoc/Doxyfile b/doc/cdoc/Doxyfile
deleted file mode 100644
index c9c386e4e..000000000
--- a/doc/cdoc/Doxyfile
+++ /dev/null
@@ -1,29 +0,0 @@
-# Doxyfile for NumPy C API
-# See http://www.doxygen.nl/manual/config.html
-PROJECT_NAME = numpy
-PROJECT_NUMBER = 2.0.0
-OUTPUT_DIRECTORY = build
-STRIP_FROM_PATH = ../../numpy/core
-INHERIT_DOCS = YES
-TAB_SIZE = 8
-OPTIMIZE_OUTPUT_FOR_C = YES
-EXTRACT_ALL = YES
-EXTRACT_PRIVATE = YES
-EXTRACT_STATIC = YES
-CASE_SENSE_NAMES = NO
-INPUT = ../../numpy/core/src \
- ../../numpy/core/include
-FILE_PATTERNS = *.h *.c *.src
-RECURSIVE = YES
-INPUT_FILTER = ./numpyfilter.py
-REFERENCED_BY_RELATION = YES
-REFERENCES_RELATION = YES
-ALPHABETICAL_INDEX = NO
-GENERATE_HTML = YES
-HTML_TIMESTAMP = YES
-GENERATE_TREEVIEW = YES
-SEARCHENGINE = NO
-GENERATE_LATEX = NO
-PAPER_TYPE = a4wide
-GENERATE_XML = NO
-HAVE_DOT = NO
diff --git a/doc/cdoc/Makefile b/doc/cdoc/Makefile
deleted file mode 100644
index 8b9deada8..000000000
--- a/doc/cdoc/Makefile
+++ /dev/null
@@ -1,10 +0,0 @@
-all: build
-
-build:
- doxygen
-
-clean:
- rm -rf build
-
-.PHONY: all build clean
-
diff --git a/doc/cdoc/README b/doc/cdoc/README
deleted file mode 100644
index a5363cfa1..000000000
--- a/doc/cdoc/README
+++ /dev/null
@@ -1,31 +0,0 @@
-cdoc
-====
-
-This is a simple Doxygen project for building NumPy C code documentation,
-with docstrings extracted from the C sources themselves.
-
-The understood syntax for documentation in the C source is
-
- /*
- * Some text in reStructuredText format
- */
- int function_to_which_the_text_applies()
- {
- ...
- }
-
- /*
- * More text in reStructuredText format
- */
- struct
- {
- int variable_1; /* Documentation for variable_1 */
-
- /*
- * Documentation for variable_2
- */
- int variable_2;
- } struct_name_t;
-
-Please do not use JavaDoc or Doxygen-specific formatting at the moment.
-
diff --git a/doc/cdoc/numpyfilter.py b/doc/cdoc/numpyfilter.py
deleted file mode 100755
index d3cfe18f0..000000000
--- a/doc/cdoc/numpyfilter.py
+++ /dev/null
@@ -1,104 +0,0 @@
-#!/usr/bin/env python3
-"""
-numpyfilter.py [-h] inputfile
-
-Interpret C comments as ReStructuredText, and replace them by the HTML output.
-Also, add Doxygen /** and /**< syntax automatically where appropriate.
-
-"""
-import sys
-import re
-import os
-import textwrap
-
-from numpy.compat import pickle
-
-CACHE_FILE = 'build/rst-cache.pck'
-
-def main():
- import argparse
-
- parser = argparse.ArgumentParser(usage=__doc__.strip())
- parser.add_argument('input_file', help='input file')
- args = parser.parse_args()
-
- comment_re = re.compile(r'(\n.*?)/\*(.*?)\*/', re.S)
-
- cache = load_cache()
-
- try:
- with open(args.input_file, 'r') as f:
- text = f.read()
- text = comment_re.sub(lambda m: process_match(m, cache), text)
- sys.stdout.write(text)
- finally:
- save_cache(cache)
-
-def filter_comment(text):
- if text.startswith('NUMPY_API'):
- text = text[9:].strip()
- if text.startswith('UFUNC_API'):
- text = text[9:].strip()
-
- html = render_html(text)
- return html
-
-def process_match(m, cache=None):
- pre, rawtext = m.groups()
-
- preline = pre.split("\n")[-1]
-
- if cache is not None and rawtext in cache:
- text = cache[rawtext]
- else:
- text = re.compile(r'^\s*\*', re.M).sub('', rawtext)
- text = textwrap.dedent(text)
- text = filter_comment(text)
-
- if cache is not None:
- cache[rawtext] = text
-
- if preline.strip():
- return pre + "/**< " + text + " */"
- else:
- return pre + "/** " + text + " */"
-
-def load_cache():
- if os.path.exists(CACHE_FILE):
- with open(CACHE_FILE, 'rb') as f:
- try:
- cache = pickle.load(f)
- except Exception:
- cache = {}
- else:
- cache = {}
- return cache
-
-def save_cache(cache):
- with open(CACHE_FILE + '.new', 'wb') as f:
- pickle.dump(cache, f)
- os.rename(CACHE_FILE + '.new', CACHE_FILE)
-
-def render_html(text):
- import docutils.parsers.rst
- import docutils.writers.html4css1
- import docutils.core
-
- docutils.parsers.rst.roles.DEFAULT_INTERPRETED_ROLE = 'title-reference'
- writer = docutils.writers.html4css1.Writer()
- parts = docutils.core.publish_parts(
- text,
- writer=writer,
- settings_overrides = dict(halt_level=5,
- traceback=True,
- default_reference_context='title-reference',
- stylesheet_path='',
- # security settings:
- raw_enabled=0,
- file_insertion_enabled=0,
- _disable_config=1,
- )
- )
- return parts['html_body']
-
-if __name__ == "__main__": main()