1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-01 09:24:20 -04:00
denoland-deno/msg.proto

71 lines
1.8 KiB
Protocol Buffer
Raw Normal View History

2018-05-25 15:30:09 -04:00
syntax = "proto3";
2018-05-14 00:31:48 -04:00
package main;
2018-05-21 22:07:40 -04:00
message BaseMsg {
2018-05-25 15:30:09 -04:00
string channel = 1;
bytes payload = 2;
2018-05-21 22:07:40 -04:00
}
2018-05-14 00:31:48 -04:00
message Msg {
2018-05-25 15:30:09 -04:00
string error = 1;
enum Command {
2018-05-25 15:30:09 -04:00
ERROR = 0;
START = 1;
CODE_FETCH = 2;
CODE_FETCH_RES = 3;
CODE_CACHE = 4;
2018-05-25 15:36:13 -04:00
EXIT = 5;
TIMER_START = 6;
TIMER_READY = 7;
TIMER_CLEAR = 8;
}
2018-05-25 15:30:09 -04:00
Command command = 2;
// We avoid creating a message for each command (and use oneof or any types)
// In order to reduce code in the size of the generated javascript
// "msg.pb.js". It seems that each new message adds 20k and we want to
// potentially add many hundreds of commands. Therefore we just prefix command
// arguments by their name.
2018-05-25 15:36:13 -04:00
// START
2018-05-25 15:30:09 -04:00
string start_cwd = 10;
repeated string start_argv = 11;
2018-05-25 15:30:09 -04:00
bool start_debug_flag = 12;
string start_main_js = 13; // The contents of dist/main.js
string start_main_map = 14; // The contents of dist/main.map
// CODE_FETCH
string code_fetch_module_specifier = 20;
string code_fetch_containing_file = 21;
2018-05-25 15:36:13 -04:00
// CODE_FETCH_RES
2018-05-19 04:47:40 -04:00
// If it's a non-http module, moduleName and filename will be the same.
// For http modules, moduleName is its resolved http URL, and filename
// is the location of the locally downloaded source code.
string code_fetch_res_module_name = 30;
string code_fetch_res_filename = 31;
string code_fetch_res_source_code = 32;
string code_fetch_res_output_code = 33; // Non-empty only if cached.
// CODE_CACHE
string code_cache_filename = 41;
string code_cache_source_code = 42;
string code_cache_output_code = 43;
2018-05-25 15:36:13 -04:00
// EXIT
int32 exit_code = 50;
2018-05-17 21:02:06 -04:00
2018-05-25 15:36:13 -04:00
// TIMER_START
int32 timer_start_id = 60;
bool timer_start_interval = 61;
int32 timer_start_duration = 62; // In milliseconds.
2018-05-18 11:49:28 -04:00
2018-05-25 15:36:13 -04:00
// TIMER_READY
int32 timer_ready_id = 70;
bool timer_ready_done = 71;
2018-05-18 11:49:28 -04:00
2018-05-25 15:36:13 -04:00
// TIMER_CLEAR
int32 timer_clear_id = 80;
2018-05-18 11:49:28 -04:00
}