Nim: fixup defines for constructible C++ objects

Ref #91
This commit is contained in:
Emery Hemingway
2017-11-28 10:15:17 -06:00
parent e0a9ec0f8e
commit 1b91592ed3
4 changed files with 5 additions and 15 deletions

View File

@@ -24,12 +24,11 @@ type RpcEffect* = object of RootEffect
type Constructible* {.
importcpp: "Genode::Constructible", header: "<util/reconstructible.h>", final, pure.} [T] = object
template defineConstructible*(Final, Base: untyped) =
type Final* = Constructible[Base]
proc construct*(obj: Final) {.importcpp: "#.construct()".}
proc construct*(obj: ref Final) {.importcpp: "(*#).construct()".}
proc destruct*(obj: Final) {.importcpp: "#.destruct()".}
proc destruct*(obj: ref Final) {.importcpp: "(*#).destruct()".}
proc construct*[T](x: Constructible[T]) {.importcpp.}
## Construct a constructible C++ object.
proc destruct*[T](x: Constructible[T]) {.importcpp.}
## Destruct a constructible C++ object.
#
# Signals

View File

@@ -27,9 +27,6 @@ type
proc construct(conn: Connection; label: cstring) {.
importcpp: "#.construct(#)".}
proc destruct(conn: Connection) {.
importcpp: "#.destruct()".}
proc newNitpickerClient*(label = ""): NitpickerClient =
new result
construct result.conn, label

View File

@@ -28,9 +28,6 @@ type
proc construct(c: Connection, label: cstring, bufferSize: csize) {.
importcpp: "#.construct(*genodeEnv, @)", tags: [RpcEffect].}
proc destruct(c: Connection) {.tags: [RpcEffect],
importcpp: "#.destruct()".}
proc dataspace(c: Connection): DataspaceCapability {.tags: [RpcEffect],
importcpp: "#->dataspace()".}

View File

@@ -29,9 +29,6 @@ type
proc construct(c: Connection, label: cstring) {.
importcpp: "#.construct(*genodeEnv, @)", tags: [RpcEffect].}
proc destruct(c: Connection) {.tags: [RpcEffect],
importcpp: "#.destruct()".}
proc dataspace(c: Connection): DataspaceCapability {.tags: [RpcEffect],
importcpp: "#->dataspace()".}
## Return the current dataspace capability from the ROM server.