org.ow2.mind.doc.idl.IDLTemplateProcessor Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of mindoc Show documentation
Show all versions of mindoc Show documentation
Document generator for MIND
/**
\file com/st/p2012/mind/idl/IDLTemplateProcessor.java
\brief The class encapsulating the template component for the IDL documentation generator.
\n
This file is part of the Platform 2012 program,
a cooperation between STMicroelectronics and CEA.\n
Redistribution of this file to outside parties is
strictly prohibited without the written consent
of the module owner indicated below.\n
\par Module owner: [email protected]
\par Copyright (C) 2009 STMicroelectronics
\par Authors: [email protected]
\par Id: $Id$
\par Date: $Date$
\par Revision: $Rev$
*/
package org.ow2.mind.doc.idl;
import static org.ow2.mind.PathHelper.fullyQualifiedNameToPath;
import static org.ow2.mind.SourceFileWriter.writeToFile;
import static org.ow2.mind.doc.HTMLDocumentationHelper.addAnnotationDecoration;
import static org.ow2.mind.doc.HTMLDocumentationHelper.getMethodAnchor;
import static org.ow2.mind.doc.HTMLDocumentationHelper.getPathToRoot;
import java.io.File;
import java.io.IOException;
import java.io.StringWriter;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import org.antlr.stringtemplate.StringTemplate;
import org.antlr.stringtemplate.StringTemplateGroup;
import org.antlr.stringtemplate.language.DefaultTemplateLexer;
import org.objectweb.fractal.adl.ADLException;
import org.objectweb.fractal.adl.CompilerError;
import org.ow2.mind.adl.AbstractSourceGenerator;
import org.ow2.mind.doc.HTMLDocumentationHelper;
import org.ow2.mind.doc.HTMLRenderer;
import org.ow2.mind.doc.comments.CommentProcessor;
import org.ow2.mind.idl.IDLVisitor;
import org.ow2.mind.idl.ast.EnumDefinition;
import org.ow2.mind.idl.ast.IDL;
import org.ow2.mind.idl.ast.InterfaceDefinition;
import org.ow2.mind.idl.ast.Method;
import org.ow2.mind.idl.ast.StructDefinition;
import org.ow2.mind.idl.ast.Type;
import org.ow2.mind.idl.ast.TypeCollectionContainer;
import org.ow2.mind.idl.ast.TypeDefinition;
import org.ow2.mind.idl.ast.UnionDefinition;
import org.ow2.mind.idl.jtb.visitor.TreeFormatter;
import org.ow2.mind.io.IOErrors;
public class IDLTemplateProcessor extends AbstractSourceGenerator
implements
IDLVisitor {
public IDLTemplateProcessor() {
super("st.definitions.documentation.Interface");
}
// ---------------------------------------------------------------------------
// Implementation of the Visitor interface
// ---------------------------------------------------------------------------
public void visit(final IDL idl, final Map