1 /* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ 2 /************************************************************************* 3 * 4 * The Contents of this file are made available subject to the terms of 5 * the BSD license. 6 * 7 * Copyright 2000, 2010 Oracle and/or its affiliates. 8 * All rights reserved. 9 * 10 * Redistribution and use in source and binary forms, with or without 11 * modification, are permitted provided that the following conditions 12 * are met: 13 * 1. Redistributions of source code must retain the above copyright 14 * notice, this list of conditions and the following disclaimer. 15 * 2. Redistributions in binary form must reproduce the above copyright 16 * notice, this list of conditions and the following disclaimer in the 17 * documentation and/or other materials provided with the distribution. 18 * 3. Neither the name of Sun Microsystems, Inc. nor the names of its 19 * contributors may be used to endorse or promote products derived 20 * from this software without specific prior written permission. 21 * 22 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 23 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 24 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 25 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 26 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 27 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 28 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS 29 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 30 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR 31 * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE 32 * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 33 * 34 *************************************************************************/ 35 import com.sun.star.uno.TypeClass; 36 37 public interface XLanguageSourceCodeGenerator { 38 39 public static final int nJAVA = 0; 40 public static final int nCPLUSPLUS = 1; 41 public static final int nBASIC = 2; 42 getHeaderSourceCode(Object _oUnoObject, String _sClassName, TypeClass _aTypeClass)43 public String getHeaderSourceCode(Object _oUnoObject, String _sClassName, TypeClass _aTypeClass); 44 getFinalHeaderStatements()45 public String getFinalHeaderStatements(); 46 assignqueryInterfaceHeaderSourceCode()47 public void assignqueryInterfaceHeaderSourceCode(); 48 getMainMethodSignatureSourceCode(XUnoNode _oUnoNode, String _soReturnObjectDescription)49 public String getMainMethodSignatureSourceCode(XUnoNode _oUnoNode, String _soReturnObjectDescription); 50 getMethodTerminationSourceCode()51 public String getMethodTerminationSourceCode(); 52 getStatementTerminationCharacter()53 public String getStatementTerminationCharacter(); 54 needsqueryInterface()55 public boolean needsqueryInterface(); 56 getqueryInterfaceSourceCode(String _sReturnValueDescription, String _sClassName, String _sObjectDescription)57 public String getqueryInterfaceSourceCode(String _sReturnValueDescription, String _sClassName, String _sObjectDescription); 58 getPropertyValueGetterSourceCode(String _sPropertyName, String _sReturnVariableName, String _sIncomingObjectName, TypeClass _aTypeClass, String _sTypeName)59 public String getPropertyValueGetterSourceCode(String _sPropertyName, String _sReturnVariableName, String _sIncomingObjectName, TypeClass _aTypeClass, String _sTypeName); 60 getStructSourceCode(String _sReturnVariableDescription, String _sObjectDescription, String _sMember)61 public String getStructSourceCode(String _sReturnVariableDescription, String _sObjectDescription, String _sMember); 62 getObjectTypeDescription(String _sClassName, boolean _bAsHeader)63 public String getObjectTypeDescription(String _sClassName, boolean _bAsHeader); 64 getbooleanTypeDescription()65 public String getbooleanTypeDescription(); 66 getbyteTypeDescription()67 public String getbyteTypeDescription(); 68 getshortTypeDescription()69 public String getshortTypeDescription(); 70 71 72 getlongTypeDescription()73 public String getlongTypeDescription(); 74 getunsignedlongTypeDescription()75 public String getunsignedlongTypeDescription(); 76 gethyperTypeDescription()77 public String gethyperTypeDescription(); 78 getunsignedhyperTypeDescription()79 public String getunsignedhyperTypeDescription(); 80 getfloatTypeDescription()81 public String getfloatTypeDescription(); 82 getdoubleTypeDescription()83 public String getdoubleTypeDescription(); 84 getcharTypeDescription()85 public String getcharTypeDescription(); 86 getstringTypeDescription(boolean _bAsHeaderSourceCode)87 public String getstringTypeDescription(boolean _bAsHeaderSourceCode); 88 89 90 getanyTypeDescription(boolean _bAsHeaderSourceCode)91 public String getanyTypeDescription(boolean _bAsHeaderSourceCode); 92 93 94 getVariableDeclaration(String _sTypeString, String _sVariableName, boolean _bIsArray, TypeClass aTypeClass, boolean _bInitialize)95 public String getVariableDeclaration(String _sTypeString, String _sVariableName, boolean _bIsArray, TypeClass aTypeClass, boolean _bInitialize); 96 getMethodSeparator()97 public String getMethodSeparator(); 98 getStringValue(String _sValue)99 public String getStringValue(String _sValue); 100 getConvertedSourceCodeValueOfObject(String _sReturnVariableName, String _sObjectDescription, TypeClass _aTypeClass, String _sTypeName)101 public String getConvertedSourceCodeValueOfObject(String _sReturnVariableName, String _sObjectDescription, TypeClass _aTypeClass, String _sTypeName); 102 castLiteral(String _sExpression, TypeClass _aTypeClass)103 public String castLiteral(String _sExpression, TypeClass _aTypeClass); 104 getCommentSign()105 public String getCommentSign(); 106 } 107 108 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 109