blob: 26df71afaf8c4b92637abd0dcac9a3e8396e05da [file] [log] [blame]
%
% A Dataflow Framework for Java
%
% Original Authors: Stefan Heule, Charlie Garrett, 2011 - 2012
%
\documentclass[]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{textcomp}
% \usepackage[scaled=0.88]{luximono}
\usepackage{graphicx}
\usepackage{ucs}
\usepackage{longtable}
% At least 80% of every float page must be taken up by
% floats; there will be no page with more than 20% white space.
\def\topfraction{.95}
\def\dbltopfraction{\topfraction}
\def\floatpagefraction{\topfraction} % default .5
\def\dblfloatpagefraction{\topfraction} % default .5
\def\textfraction{.05}
%% This doesn't work for longtable. :-(
% Add line between figure and text
\makeatletter
\def\topfigrule{\kern3\p@ \hrule \kern -3.4\p@} % the \hrule is .4pt high
\def\botfigrule{\kern-3\p@ \hrule \kern 2.6\p@} % the \hrule is .4pt high
\def\dblfigrule{\kern3\p@ \hrule \kern -3.4\p@} % the \hrule is .4pt high
\makeatother
\usepackage{listings}
\lstset{
language=Java,
basicstyle=\ttfamily\mdseries,
identifierstyle=,
stringstyle=\color{gray},
numbers=left,
numbersep=5pt,
inputencoding=utf8x,
xleftmargin=8pt,
xrightmargin=8pt,
keywordstyle=[1]\bfseries,
keywordstyle=[2]\bfseries,
keywordstyle=[3]\bfseries,
keywordstyle=[4]\bfseries,
numberstyle=\tiny,
stepnumber=1,
breaklines=true,
breakatwhitespace,
frame=lines,
showstringspaces=false,
tabsize=2,
commentstyle=\color{gray},
captionpos=b
}
\newcommand{\code}[1]{\lstinline{#1}}
\usepackage{fullpage}
\def\sectionautorefname{Section}
\def\subsectionautorefname{Section}
\def\subsubsectionautorefname{Section}
\def\paragraphautorefname{Section}
\def\subsubsubsection{\paragraph}
\setcounter{secnumdepth}{4}
% macros for bnf grammers
\newenvironment{bnfgrammar}{\begin{center}\renewcommand{\arraystretch}{1.5}\begin{tabular}{rcl}}{\end{tabular}\end{center}}
\newcommand{\nonterminal}[1]{$\langle \textit{#1} \rangle$}
\newcommand{\production}[2]{#1 &$::=$& #2\\}
\newcommand{\literal}[1]{`$\text{\code{#1}}$'}
\newcommand{\alt}{$~\!\!\mid~$}
\newcommand{\altline}[1]{&$\mid$&#1\\}
\usepackage{mathtools}
\usepackage{amssymb,amsfonts,amsmath}
\usepackage[svgnames]{xcolor}
\usepackage[colorlinks=true,pdfborder={0 0 0},citecolor=DarkGreen,linkcolor=DarkBlue,urlcolor=DarkBlue]{hyperref}
\usepackage{amsthm}
% \usepackage{thmtools}
%\theoremstyle{definition}
\newtheorem{definition}{Definition}[section]
% control-flow graph images and listings
% Arguments 2 and 3 control how much horizontal space the code takes on the page.
\newcommand{\flow}[4]{
\begin{figure}
\centering\vspace{0pt}
\begin{minipage}[t]{#2\textwidth}
\centering\vspace{0pt}
\begin{minipage}[t]{#3\textwidth}
\lstinputlisting{examples/#1.java}
\end{minipage}%
\end{minipage}%
\begin{minipage}[t]{.6\textwidth}
\centering\vspace{0pt}
\includegraphics[scale=0.6]{examples/graphs/#1.pdf}
\centering
\end{minipage}
\caption{#4}
\label{fig:#1}
\end{figure}}
% references to the Java Language Specification.
\newcommand{\jlsref}[1]{JLS~\textsection{}#1}
\usepackage{framed}
\newenvironment{workinprogress}
{\color{gray} \begin{leftbar}}
{\end{leftbar}}
\newenvironment{new}{\begin{framed}}{\end{framed}}
\usepackage{booktabs}
\newcommand{\todo}[1]{{\textcolor{DarkRed}{ [\textbf{TODO}: #1]}}}
\parindent 0em
\setlength{\parskip}{.5em}
\title{A Dataflow Framework for Java}
\author{\url{https://checkerframework.org/}}
\begin{document}
\maketitle
\input{content.tex}
%\bibliographystyle{alpha}
%\bibliography{}
\end{document}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: t
%%% TeX-command-default: "PDF"
%%% End: