32 #ifndef _QORE_CLASS_SOCKETPOLLOPERATIONBASE_H
34 #define _QORE_CLASS_SOCKETPOLLOPERATIONBASE_H
36 #include "qore/TypedHashDecl.h"
40 DLLLOCAL SocketPollOperationBase(
QoreObject*
self) : self(self) {
44 DLLLOCAL SocketPollOperationBase() {
50 this->
self.reset(
self);
60 ValueHolder rv(self->getReferencedMemberNoMethod(
"sock", xsink), xsink);
62 xsink->
raiseException(
"POLL-ERROR",
"'sock' member is no longer an object; got type '%s' instead",
63 rv->getFullTypeName());
69 DLLLOCAL
virtual ~SocketPollOperationBase() =
default;
71 DLLLOCAL
virtual bool goalReached()
const = 0;
75 DLLLOCAL
virtual QoreValue getOutput()
const {
84 info->setKeyValue(
"events", events, xsink);
85 info->setKeyValue(
"socket", getReferencedSocketObject(xsink), xsink);
86 return info.release();
89 DLLLOCAL
virtual const char* getStateImpl()
const = 0;
the base class for all data to be used as private data of Qore objects
Definition: AbstractPrivateData.h:44
container for holding Qore-language exception information and also for registering a "thread_exit" ca...
Definition: ExceptionSink.h:48
DLLEXPORT AbstractQoreNode * raiseException(const char *err, const char *fmt,...)
appends a Qore-language exception to the list
defines a Qore-language class
Definition: QoreClass.h:249
This is the hash or associative list container type in Qore, dynamically allocated only,...
Definition: QoreHashNode.h:50
contains constants, classes, and subnamespaces in QoreProgram objects
Definition: QoreNamespace.h:65
the implementation of Qore's object data type, reference counted, dynamically-allocated only
Definition: QoreObject.h:60
Convenience class for holding temporary / weak references to objects.
Definition: QoreObject.h:644
Qore's string value type, reference counted, dynamically-allocated only.
Definition: QoreStringNode.h:50
holds an object and dereferences it in the destructor
Definition: QoreValue.h:476
const qore_type_t NT_OBJECT
type value for QoreObject
Definition: node_types.h:52
The main value class in Qore, designed to be passed by value.
Definition: QoreValue.h:275