Skip to content

Commit

Permalink
kiss rpc flat buffer
Browse files Browse the repository at this point in the history
  • Loading branch information
Your Name committed Aug 4, 2017
1 parent bd1a7fb commit dc245e4
Show file tree
Hide file tree
Showing 138 changed files with 2,487 additions and 8,051 deletions.
Binary file modified IDL-Example/client/KissRpcClient
Binary file not shown.
2 changes: 0 additions & 2 deletions IDL-Example/client/dub.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,6 @@
"authors": [
"putao.com dlang team."
],
"versions":["RpcDebug"],

"license": "Apache-2.0",
"dependencies":{
"KissRpc":{
Expand Down
10 changes: 4 additions & 6 deletions IDL-Example/client/dub.userprefs
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
<Properties StartupItem="dub.json">
<MonoDevelop.Ide.Workspace ActiveConfiguration="Default" PreferredExecutionTarget="cov" />
<MonoDevelop.Ide.Workbench ActiveDocument="dub.json">
<MonoDevelop.Ide.Workbench ActiveDocument="source/app.d">
<Files>
<File FileName="source/app.d" Line="75" Column="23" />
<File FileName="dub.json" Line="18" Column="3" />
<File FileName="source/IDL/KissIdlService.d" Line="16" Column="119" />
<File FileName="source/IDL/KissIdlMessage.d" Line="1" Column="1" />
<File FileName="source/IDL/KissIdlInterface.d" Line="1" Column="1" />
<File FileName="source/app.d" Line="150" Column="1" />
<File FileName="dub.json" Line="19" Column="1" />
<File FileName="source/IDL/kissidlService.d" Line="1" Column="1" />
</Files>
</MonoDevelop.Ide.Workbench>
<MonoDevelop.Ide.DebuggingService.Breakpoints>
Expand Down
64 changes: 0 additions & 64 deletions IDL-Example/client/source/IDL/KissIdlInterface.d

This file was deleted.

57 changes: 0 additions & 57 deletions IDL-Example/client/source/IDL/KissIdlMessage.d

This file was deleted.

32 changes: 0 additions & 32 deletions IDL-Example/client/source/IDL/KissIdlService.d

This file was deleted.

83 changes: 83 additions & 0 deletions IDL-Example/client/source/IDL/flatbuffer/kissidl.d
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
// automatically generated by the FlatBuffers compiler, do not modify

module KissRpc.IDL.flatbuffer.kissidl;

import std.typecons;
import flatbuffers;

struct UserInfoFB {
mixin Table!UserInfoFB;

static UserInfoFB getRootAsUserInfoFB(ByteBuffer _bb) { return UserInfoFB.init_(_bb.get!int(_bb.position()) + _bb.position(), _bb); }
@property Nullable!string name() { uint o = __offset(4); return o != 0 ? Nullable!string(__string(o + _pos)) : Nullable!string.init; }
@property int age() { uint o = __offset(6); return o != 0 ? _buffer.get!int(o + _pos) : 0; }
@property double widget() { uint o = __offset(8); return o != 0 ? _buffer.get!double(o + _pos) : 0.0; }

static uint createUserInfoFB(FlatBufferBuilder builder,uint name,int age,double widget) {
builder.startObject(3);
UserInfoFB.addWidget(builder, widget);
UserInfoFB.addAge(builder, age);
UserInfoFB.addName(builder, name);
return UserInfoFB.endUserInfoFB(builder);
}

static void startUserInfoFB(FlatBufferBuilder builder) { builder.startObject(3); }
static void addName(FlatBufferBuilder builder, uint nameOffset) { builder.addOffset(0, nameOffset, 0); }
static void addAge(FlatBufferBuilder builder, int age) { builder.add!int(1, age, 0); }
static void addWidget(FlatBufferBuilder builder, double widget) { builder.add!double(2, widget, 0.0); }
static uint endUserInfoFB(FlatBufferBuilder builder) {
uint o = builder.endObject();
return o;
}
}

struct ContactsFB {
mixin Table!ContactsFB;

static ContactsFB getRootAsContactsFB(ByteBuffer _bb) { return ContactsFB.init_(_bb.get!int(_bb.position()) + _bb.position(), _bb); }
@property int number() { uint o = __offset(4); return o != 0 ? _buffer.get!int(o + _pos) : 0; }
auto userInfoList() { return Iterator!(ContactsFB, UserInfoFB, "userInfoList")(this); }
Nullable!UserInfoFB userInfoList(uint j) { uint o = __offset(6); return o != 0 ? Nullable!UserInfoFB(UserInfoFB.init_(__indirect(__dvector(o) + j * 4), _buffer)) : Nullable!UserInfoFB.init; }
@property uint userInfoListLength() { uint o = __offset(6); return o != 0 ? __vector_len(o) : 0; }

static uint createContactsFB(FlatBufferBuilder builder,int number,uint userInfoList) {
builder.startObject(2);
ContactsFB.addUserInfoList(builder, userInfoList);
ContactsFB.addNumber(builder, number);
return ContactsFB.endContactsFB(builder);
}

static void startContactsFB(FlatBufferBuilder builder) { builder.startObject(2); }
static void addNumber(FlatBufferBuilder builder, int number) { builder.add!int(0, number, 0); }
static void addUserInfoList(FlatBufferBuilder builder, uint userInfoListOffset) { builder.addOffset(1, userInfoListOffset, 0); }
static uint createUserInfoListVector(FlatBufferBuilder builder, uint[] data) { builder.startVector(4, cast(uint)data.length, 4); for (size_t i = data.length; i > 0; i--) builder.addOffset(data[i - 1]); return builder.endVector(); }
static void startUserInfoListVector(FlatBufferBuilder builder, uint numElems) { builder.startVector(4, numElems, 4); }
static uint endContactsFB(FlatBufferBuilder builder) {
uint o = builder.endObject();
return o;
}
}

struct AccountNameFB {
mixin Table!AccountNameFB;

static AccountNameFB getRootAsAccountNameFB(ByteBuffer _bb) { return AccountNameFB.init_(_bb.get!int(_bb.position()) + _bb.position(), _bb); }
@property Nullable!string name() { uint o = __offset(4); return o != 0 ? Nullable!string(__string(o + _pos)) : Nullable!string.init; }
@property int count() { uint o = __offset(6); return o != 0 ? _buffer.get!int(o + _pos) : 0; }

static uint createAccountNameFB(FlatBufferBuilder builder,uint name,int count) {
builder.startObject(2);
AccountNameFB.addCount(builder, count);
AccountNameFB.addName(builder, name);
return AccountNameFB.endAccountNameFB(builder);
}

static void startAccountNameFB(FlatBufferBuilder builder) { builder.startObject(2); }
static void addName(FlatBufferBuilder builder, uint nameOffset) { builder.addOffset(0, nameOffset, 0); }
static void addCount(FlatBufferBuilder builder, int count) { builder.add!int(1, count, 0); }
static uint endAccountNameFB(FlatBufferBuilder builder) {
uint o = builder.endObject();
return o;
}
}

21 changes: 21 additions & 0 deletions IDL-Example/client/source/IDL/flatbuffer/kissidl.fbs
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
namespace KissRpc.IDL.flatbuffer;

table UserInfoFB{
name:string;
age:int;
widget:double;
}


table ContactsFB{
number:int;
userInfoList:[UserInfoFB];
}


table AccountNameFB{
name:string;
count:int;
}


Loading

0 comments on commit dc245e4

Please sign in to comment.