⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fragmentunit.java

📁 Jamon是一个Java文本模板引擎
💻 JAVA
字号:
/* * The contents of this file are subject to the Mozilla Public * License Version 1.1 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.mozilla.org/MPL/ * * Software distributed under the License is distributed on an "AS * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or * implied. See the License for the specific language governing * rights and limitations under the License. * * The Original Code is Jamon code, released February, 2003. * * The Initial Developer of the Original Code is Jay Sachs.  Portions * created by Jay Sachs are Copyright (C) 2003 Jay Sachs.  All Rights * Reserved. * * Contributor(s): Ian Robertson */package org.jamon.codegen;import org.jamon.ParserErrors;import org.jamon.node.Location;import org.jamon.node.OptionalArgNode;public class FragmentUnit extends AbstractInnerUnit{    public FragmentUnit(String p_name, StatementBlock p_parent,                        GenericParams p_genericParams, ParserErrors p_errors, Location p_location)    {        super(p_name, p_parent, p_errors, p_location);        m_genericParams = p_genericParams;    }    public String getFragmentInterfaceName(boolean p_makeGeneric)    {        String genericParamsClause = p_makeGeneric            ? m_genericParams.generateGenericParamsList()            : "";        if(getParent() instanceof AbstractInnerUnit)        {            return "Fragment_" + getParentUnit().getName()                + "__jamon__" + getName() + genericParamsClause;        }        else        {            return "Fragment_" + getName() + genericParamsClause;        }    }    @Override    public void addOptionalArg(OptionalArgNode p_node)    {        getErrors().addError(            "Fragments cannot have optional arguments",            p_node.getValue().getLocation());    }    @Override    public void addOptionalArg(OptionalArgument p_arg)    {        throw new UnsupportedOperationException();    }    @Override    protected void addFragmentArg(FragmentArgument p_arg)    {        getErrors().addError("Fragments cannot have fragment arguments",                             p_arg.getLocation());    }    @Override    public FragmentUnit getFragmentUnitIntf(String p_path)    {        return getParent().getFragmentUnitIntf(p_path);    }    public void printInterface(CodeWriter p_writer,                               String p_interfaceModifiers,                               boolean p_isCopy)    {        m_genericParams.suppressGenericHidingWarnings(p_writer);        p_writer.println(p_interfaceModifiers + " static interface "                         + getFragmentInterfaceName(true));        if (p_isCopy)        {            p_writer.println("  extends Intf." + getFragmentInterfaceName(true));        }        p_writer.openBlock();        if (! p_isCopy)        {            p_writer.print("void renderNoFlush");            p_writer.openList();            p_writer.printListElement(ArgNames.WRITER_DECL);            printRenderArgsDecl(p_writer);            p_writer.closeList();            p_writer.println();            p_writer.println("  throws java.io.IOException;");            p_writer.print(ClassNames.RENDERER + " makeRenderer");            p_writer.openList();            printRenderArgsDecl(p_writer);            p_writer.closeList();            p_writer.println(";");        }        p_writer.closeBlock();        p_writer.println();    }    private final GenericParams m_genericParams;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -