Commit 44d91b41 authored by Kenton Varda's avatar Kenton Varda

Merge pull request #330 from katreniak/bka-cleanups

Bka cleanups
parents 22c1b628 fc000f58
...@@ -534,10 +534,10 @@ void decodeField(Type type, JsonValue::Reader value, SetFn setFn, DecodeArrayFn ...@@ -534,10 +534,10 @@ void decodeField(Type type, JsonValue::Reader value, SetFn setFn, DecodeArrayFn
} }
break; break;
case schema::Type::INTERFACE: case schema::Type::INTERFACE:
KJ_FAIL_REQUIRE("don't know how to JSON-encode capabilities; " KJ_FAIL_REQUIRE("don't know how to JSON-decode capabilities; "
"JsonCodec::Handler not implemented yet :("); "JsonCodec::Handler not implemented yet :(");
case schema::Type::ANY_POINTER: case schema::Type::ANY_POINTER:
KJ_FAIL_REQUIRE("don't know how to JSON-encode AnyPointer; " KJ_FAIL_REQUIRE("don't know how to JSON-decode AnyPointer; "
"JsonCodec::Handler not implemented yet :("); "JsonCodec::Handler not implemented yet :(");
} }
} }
......
...@@ -563,7 +563,7 @@ void DynamicStruct::Builder::set(StructSchema::Field field, const DynamicValue:: ...@@ -563,7 +563,7 @@ void DynamicStruct::Builder::set(StructSchema::Field field, const DynamicValue::
.set(value.as<AnyPointer>()); .set(value.as<AnyPointer>());
return; return;
case schema::Type::INTERFACE: case schema::Type::INTERFACE: {
auto interfaceType = type.asInterface(); auto interfaceType = type.asInterface();
auto capability = value.as<DynamicCapability>(); auto capability = value.as<DynamicCapability>();
KJ_REQUIRE(capability.getSchema().extends(interfaceType), "Value type mismatch.") { KJ_REQUIRE(capability.getSchema().extends(interfaceType), "Value type mismatch.") {
...@@ -572,6 +572,7 @@ void DynamicStruct::Builder::set(StructSchema::Field field, const DynamicValue:: ...@@ -572,6 +572,7 @@ void DynamicStruct::Builder::set(StructSchema::Field field, const DynamicValue::
builder.getPointerField(slot.getOffset() * POINTERS).setCapability( builder.getPointerField(slot.getOffset() * POINTERS).setCapability(
kj::mv(capability.hook)); kj::mv(capability.hook));
return; return;
}
} }
KJ_UNREACHABLE; KJ_UNREACHABLE;
...@@ -742,7 +743,7 @@ void DynamicStruct::Builder::adopt(StructSchema::Field field, Orphan<DynamicValu ...@@ -742,7 +743,7 @@ void DynamicStruct::Builder::adopt(StructSchema::Field field, Orphan<DynamicValu
} }
break; break;
case schema::Type::INTERFACE: case schema::Type::INTERFACE: {
auto interfaceType = type.asInterface(); auto interfaceType = type.asInterface();
KJ_REQUIRE(orphan.getType() == DynamicValue::CAPABILITY && KJ_REQUIRE(orphan.getType() == DynamicValue::CAPABILITY &&
orphan.interfaceSchema.extends(interfaceType), orphan.interfaceSchema.extends(interfaceType),
...@@ -750,6 +751,7 @@ void DynamicStruct::Builder::adopt(StructSchema::Field field, Orphan<DynamicValu ...@@ -750,6 +751,7 @@ void DynamicStruct::Builder::adopt(StructSchema::Field field, Orphan<DynamicValu
return; return;
} }
break; break;
}
} }
builder.getPointerField(slot.getOffset() * POINTERS).adopt(kj::mv(orphan.builder)); builder.getPointerField(slot.getOffset() * POINTERS).adopt(kj::mv(orphan.builder));
......
...@@ -316,7 +316,7 @@ interface Node { ...@@ -316,7 +316,7 @@ interface Node {
} }
interface Directory extends(Node) { interface Directory extends(Node) {
list @0 () -> (list: List(Entry)); list @0 () -> (list :List(Entry));
struct Entry { struct Entry {
name @0 :Text; name @0 :Text;
node @1 :Node; node @1 :Node;
...@@ -330,9 +330,9 @@ interface Directory extends(Node) { ...@@ -330,9 +330,9 @@ interface Directory extends(Node) {
} }
interface File extends(Node) { interface File extends(Node) {
size @0 () -> (size: UInt64); size @0 () -> (size :UInt64);
read @1 (startAt :UInt64 = 0, amount :UInt64 = 0xffffffffffffffff) read @1 (startAt :UInt64 = 0, amount :UInt64 = 0xffffffffffffffff)
-> (data: Data); -> (data :Data);
# Default params = read entire file. # Default params = read entire file.
write @2 (startAt :UInt64, data :Data); write @2 (startAt :UInt64, data :Data);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment