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