
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.BindingControllerImplHelper.checkItfName;
import static org.ow2.mind.BindingControllerImplHelper.listFcHelper;
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.objectweb.fractal.api.NoSuchInterfaceException;
import org.objectweb.fractal.api.control.BindingController;
import org.objectweb.fractal.api.control.IllegalBindingException;
import org.ow2.mind.InputResourceLocator;
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;
import org.ow2.mind.io.OutputFileLocator;
import org.ow2.mind.st.AbstractStringTemplateProcessor;
public class IDLTemplateProcessor extends AbstractStringTemplateProcessor
implements
IDLVisitor,
BindingController {
// ---------------------------------------------------------------------------
// Client interfaces
// ---------------------------------------------------------------------------
/** Client interface used to locate output files. */
public OutputFileLocator outputFileLocatorItf;
/** client interface used to checks timestamps of input resources. */
public InputResourceLocator inputResourceLocatorItf;
// ---------------------------------------------------------------------------
// Implementation of the Visitor interface
// ---------------------------------------------------------------------------
public IDLTemplateProcessor() {
super("st.definitions.documentation.Interface");
}
public void visit(final IDL idl, final Map
© 2015 - 2025 Weber Informatics LLC | Privacy Policy