Class COperationEntity#
Defined in File operation_entity.h
Inheritance Relationships#
Base Types#
public CDeclarationEntity
(Class CDeclarationEntity)public sdv::idl::IOperationEntity
(Struct IOperationEntity)
Class Documentation#
-
class COperationEntity : public CDeclarationEntity, public sdv::idl::IOperationEntity#
The operation definition of an IDL file.
The operation section of the IDL file defines operations.
Public Functions
-
COperationEntity(const CContextPtr &rptrContext, CEntityPtr ptrParent)#
Default constructor.
- Parameters:
rptrContext – [in] Reference to the smart pointer holding the parse context. Must not be NULL.
ptrParent – [in] Pointer to the parent class holding this entity. This must not be NULL.
-
virtual ~COperationEntity() override = default#
Destructor.
-
virtual sdv::interface_t GetInterface(sdv::interface_id idInterface) override#
Get access to another interface. Overload of sdv::IInterfaceAccess::GetInterface.
- Parameters:
idInterface – [in] The interface id to get access to.
- Returns:
Returns a pointer to the interface or NULL when the interface is not supported.
-
virtual sdv::idl::IEntityIterator *GetParameters() override#
Get parameter entity iterator if the definition has any parameters. Overload of sdv::idl::IOperationEntity::GetParameters.
- Returns:
Returns a pointer to the parameter entity iterator or NULL when not available.
-
virtual sdv::idl::IEntityIterator *GetExceptions() override#
Get the list of possible exceptions that might be fired for this operation. Overload of sdv::idl::IOperationEntity::GetExceptions.
- Returns:
Interface pointer to the exception iterator.
-
inline virtual bool IsReadOnly() const override#
Is the entity readonly (variable declarations and writable attributes aren’t)? Overload of IDeclarationEntity::IsReadOnly.
Returns whether the entity is readonly by design or whether it is defined readonly by the code. Default value is ‘true’.
- Returns:
Returns ‘true’ when the entity defined as readonly; ‘false’ otherwise.
-
inline virtual sdv::idl::EEntityType GetType() const override#
Get the type of the entity. Overload of CEntity::GetType.
- Returns:
Returns the operation type.
-
inline virtual void Process() override#
Process the code. Overload of CEntity::Process.
Protected Functions
-
inline virtual bool SupportRaiseExceptions() const override#
Does the entity support raising exceptions? Overload of CDeclarationEntity::SupportRaiseExceptions.
- Returns:
Returns ‘true’ when the entity defined as attribute; ‘false’ otherwise.
-
inline virtual bool SupportArrays() const override#
Does the entity support arrays? Overload of CDeclarationEntity::SupportArrays.
- Returns:
Returns ‘true’ when the entity supports assignments; ‘false’ otherwise.
-
inline virtual bool SupportInterface() const override#
Does the entity support an interface as base type? Overload of CDeclarationEntity::SupportVoid.
- Returns:
Returns ‘true’ when the entity supports interfaces as base type; ‘false’ otherwise.
-
inline virtual bool SupportVoid() const override#
Does the entity support ‘void’ as base type? Overload of CDeclarationEntity::SupportVoid.
Returns whether the entity supports the ‘void’ base type. Default value is ‘false’.
- Returns:
Returns ‘true’ when the entity supports void as base type; ‘false’ otherwise.
-
inline virtual bool RequiresParameters() const override#
Does the entity support parameters? Overload of CDeclarationEntity::RequiresParameters.
Returns whether the entity supports parameters. Default value is ‘false’.
- Returns:
Returns ‘true’ when the entity requires parameters; ‘false’ otherwise.
-
inline virtual void SetOperationAsConst() override#
Set operation as const. Overload of CDeclarationEntity::SetOperationAsConst.
-
virtual std::pair<CEntityPtr, bool> FindLocal(const std::string &rssName, bool bDeclaration) const override#
Find the entity locally by looking in the parameter list. Overload of CEntity::FindLocal.
- Parameters:
rssName – [in] Reference to the string object containing the name of the entity to search for.
bDeclaration – [in] When set, the name belongs to a declaration; otherwise it belongs to a definition. Needed to allow the reuse of names between declarations and definitions.
- Returns:
Returns a pair object containing an entity pointer if the entity exists or a NULL pointer if not as well as a boolean that indicates that the entity was from an inherited entity.
-
virtual bool RequiresAssignment() const override#
Does the entity require an assignment (const declarations do)? Overload of CDeclarationEntity::RequiresAssignment.
Default processing is done by the declaration function (checking for unbound arrays). Exception: when the parent interface is defined as local, assignment is not required.
- Returns:
Returns ‘true’ when the entity requires an assignment; ‘false’ otherwise.
-
COperationEntity(const CContextPtr &rptrContext, CEntityPtr ptrParent)#