1
1
mirror of https://github.com/github/semantic.git synced 2024-11-24 08:54:07 +03:00
semantic/proto/json.proto
2018-07-03 15:09:14 -07:00

60 lines
960 B
Protocol Buffer

syntax = "proto3";
package github.semantic;
import "types.proto";
option java_package = "com.github.semantic.json";
option go_package = "github.com/semantic/json;json";
message JSONTerm {
JSONSyntax syntax = 1;
}
message JSONSyntax {
oneof syntax {
Null null = 1;
Array array = 2;
Boolean boolean = 3;
Hash hash = 4;
Float float = 5;
KeyValue keyValue = 6;
TextElement textElement = 7;
Error error = 8;
}
}
message Null { }
message Array {
repeated JSONTerm arrayElements = 1;
}
message Boolean {
bool booleanContent = 1;
}
message Hash {
repeated JSONTerm hashElements = 1;
}
message Float {
string floatContent = 1;
}
message KeyValue {
JSONTerm key = 1;
JSONTerm value = 2;
}
message TextElement {
string textElementContent = 1;
}
message Error {
repeated ErrorSite errorCallStack = 1;
repeated string errorExpected = 2;
string errorActual = 3;
repeated JSONTerm errorChildren = 4;
}