2018-07-02 18:26:35 +03:00
|
|
|
syntax = "proto3";
|
2018-07-04 00:21:56 +03:00
|
|
|
|
|
|
|
package github.semantic;
|
|
|
|
|
2018-07-03 18:50:38 +03:00
|
|
|
import "types.proto";
|
2018-07-04 00:21:56 +03:00
|
|
|
|
|
|
|
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;
|
|
|
|
}
|
|
|
|
|