au.com.swz.jatlom
Class FuncDesc

java.lang.Object
  extended by au.com.swz.jatlom.FuncDesc

public class FuncDesc
extends java.lang.Object

Describes a function.

Author:
Mark Richter

Constructor Summary
FuncDesc()
           
 
Method Summary
 boolean equals(FuncDesc funcDesc)
          Checks this function with equality to the specified function.
 boolean equals(java.lang.Object obj)
          Checks this function with equality to the specified object.
 java.lang.String getDocumentation()
          Returns the documentation string for this function.
 FuncKind getFuncKind()
          Provides the kinds of function.
 int getHelpContext()
          Returns the Help context identifier (ID) associated with this function.
 java.lang.String getHelpFile()
          Provides the fully qualified name of the Help file for this function.
 InvokeKind getInvokeKind()
          Invocation kind.
 int getMemberId()
          Returns the Member/Disp Id of this function.
 java.lang.String getName()
          Provides the name of this function.
 int getOptionalParameterCount()
          Specifies the number of optional parameters in this function.
 ParamDesc getParameter(int index)
          Returns a description of the parameter at the specified index.
 ParamDesc[] getParameters()
           
 int getPermittedReturnValueCount()
          Returns the count of permitted return values for this function.
 ParamDesc getReturnParam()
           
 int getTotalParameterCount()
          Specifies the total number of parameters that this function accepts.
 ITypeInfo getTypeInfo()
          Returns the type in which this function belongs.
 int getVTBLOffset()
          Returns the offset of thie function in to the VTBL.
 boolean isBindable()
          Determines if this function supports data binding.
 boolean isDefaultBind()
          Deteremines if this function best represents the object.
 boolean isDefaultCollectionElement()
          Determines if this function is the default collection element.
 boolean isDisplayBind()
          Determines if the function is displayed to the user as bindable.
 boolean isGetLastErrorSupported()
          Deteremines if the function supports GetLastError.
 boolean isHidden()
          Determine if the function should not be displayed to the user in a browser, although it exists and is bindable.
 boolean isImmediateBind()
          Determines if the function is mapped as individual bindable properties.
 boolean isNonBrowseable()
          Determines if the function should appear in an object browser, but not in a properties browser.
 boolean isReplaceable()
          Determines if this function has default behaviors.
 boolean isRequestEdit()
          Determines if the function will call IPropertyNotifySink::OnRequestEdit.
 boolean isRestricted()
          Determines if the function should not be accessible from macro languages.
 boolean isSource()
          Determine if this function returns an object that is a source of events.
 boolean isUiDefault()
          Determines if this function is the default display in the user interface.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FuncDesc

public FuncDesc()
Method Detail

getTypeInfo

public ITypeInfo getTypeInfo()
Returns the type in which this function belongs.

Returns:
the type in which this function belongs.

getFuncKind

public FuncKind getFuncKind()
Provides the kinds of function.

Returns:
the kinds of function.

getInvokeKind

public InvokeKind getInvokeKind()
Invocation kind. Indicates if this is a property function, and if so, what kind.

Returns:
the invocation kind.

getOptionalParameterCount

public int getOptionalParameterCount()
Specifies the number of optional parameters in this function. It can be one of the following values;

Returns:
the number of optional parameters in this function.

getReturnParam

public ParamDesc getReturnParam()

getTotalParameterCount

public int getTotalParameterCount()
Specifies the total number of parameters that this function accepts. This value includes the required parameters and the number of optional parameters.

Returns:
the total number of parameters that this function requires.

getDocumentation

public java.lang.String getDocumentation()
Returns the documentation string for this function. This can be null if the function does not specifiy any documentation.

Returns:
the documentation string for this function.

getHelpContext

public int getHelpContext()
Returns the Help context identifier (ID) associated with this function.

Returns:
the Help context identifier (ID) associated with this function.

getHelpFile

public java.lang.String getHelpFile()
Provides the fully qualified name of the Help file for this function. This value can be null if this function does not define a help file.

Returns:
the fully qualified name of the Help file for this function.

getName

public java.lang.String getName()
Provides the name of this function.

Returns:
the name of this function.

getMemberId

public int getMemberId()
Returns the Member/Disp Id of this function. This value can be passed to the IDispath.invoke method in order to invoke this function.

Returns:
the Member/Disp Id of this function.

getVTBLOffset

public int getVTBLOffset()
Returns the offset of thie function in to the VTBL. This method is only application if FuncKind == FUNC_VIRTUAL.

Returns:
the offset of thie function in to the VTBL.

getPermittedReturnValueCount

public int getPermittedReturnValueCount()
Returns the count of permitted return values for this function.

Returns:
the count of permitted return values.

getParameter

public ParamDesc getParameter(int index)
Returns a description of the parameter at the specified index.

Parameters:
index - the index of the parameter for which details are required.
Returns:
a description of the specified parameter.
Throws:
java.lang.ArrayIndexOutOfBoundsException - if the specified index is less than zero or exceeds the maximum number of type parameters for this function.

isBindable

public boolean isBindable()
Determines if this function supports data binding.

Returns:
true if this function supports data binding.

isDefaultBind

public boolean isDefaultBind()
Deteremines if this function best represents the object. Only one function in a type information can have this attribute.

Returns:
true if the function best represents the object.

isDefaultCollectionElement

public boolean isDefaultCollectionElement()
Determines if this function is the default collection element. This Permits an optimization in which the compiler looks for a member named xyz on the type of abc. If such a member is found and is flagged as an accessor function for an element of the default collection, then a call is generated to that member function. Permitted on members in dispinterfaces and interfaces; not permitted on modules. For more information, refer to defaultcollelem in Type Libraries and the Object Description Language.

Returns:
if this function is the default collection element.

isDisplayBind

public boolean isDisplayBind()
Determines if the function is displayed to the user as bindable. The isBindable must also return true.

Returns:
if the function is displayed to the user as bindable.

isGetLastErrorSupported

public boolean isGetLastErrorSupported()
Deteremines if the function supports GetLastError. If an error occurs during the function, the caller can call GetLastError to retrieve the error code.

Returns:
true if the function supports GetLastError.

isHidden

public boolean isHidden()
Determine if the function should not be displayed to the user in a browser, although it exists and is bindable.

Returns:
true if the function should not be displayed to the user in a browser.

isImmediateBind

public boolean isImmediateBind()
Determines if the function is mapped as individual bindable properties.

Returns:
true if the function is mapped as individual bindable properties.

isNonBrowseable

public boolean isNonBrowseable()
Determines if the function should appear in an object browser, but not in a properties browser.

Returns:
true if the function should not appear in a properties browser.

getParameters

public ParamDesc[] getParameters()

isReplaceable

public boolean isReplaceable()
Determines if this function has default behaviors.

Returns:
true if this function has default behaviors.

isRequestEdit

public boolean isRequestEdit()
Determines if the function will call IPropertyNotifySink::OnRequestEdit. If true then any call to this function results in a call to IPropertyNotifySink::OnRequestEdit. The implementation of OnRequestEdit determines if the change is accepted.

Returns:
true if the function will call IPropertyNotifySink::OnRequestEdit.

isRestricted

public boolean isRestricted()
Determines if the function should not be accessible from macro languages. This flag is intended for system-level functions or functions that you do not want type browsers to display.

Returns:
true if the function should not be accessible from macro languages.

isSource

public boolean isSource()
Determine if this function returns an object that is a source of events.

Returns:
true if this function returns an object that is a source of events.

isUiDefault

public boolean isUiDefault()
Determines if this function is the default display in the user interface.

Returns:
true if this function is the default display in the user interface.

equals

public boolean equals(java.lang.Object obj)
Checks this function with equality to the specified object. If the object is not of type FuncDesc then this method returns false.

Overrides:
equals in class java.lang.Object
Returns:
true if this object equals the specified object.

equals

public boolean equals(FuncDesc funcDesc)
Checks this function with equality to the specified function. If all fields in the specified function are identical to this one then this method returns true otherwise it returns false.

Returns:
true if all fields in the specified function are identical to this one.