2018-05-30 18:20:02 +03:00
|
|
|
syntax = "proto3";
|
|
|
|
package semantic;
|
2018-05-30 19:59:38 +03:00
|
|
|
enum Language {Go = 0;
|
|
|
|
Haskell = 1;
|
|
|
|
JavaScript = 2;
|
|
|
|
JSON = 3;
|
|
|
|
JSX = 4;
|
|
|
|
Markdown = 5;
|
|
|
|
Python = 6;
|
|
|
|
Ruby = 7;
|
|
|
|
TypeScript = 8;
|
|
|
|
PHP = 9;}
|
|
|
|
message Blob { bytes blobSource = 1;
|
|
|
|
string blobPath = 2;
|
|
|
|
Language blobLanguage = 3;
|
|
|
|
}
|
2018-05-30 18:20:02 +03:00
|
|
|
message Array { repeated Term arrayElements = 1;
|
|
|
|
}
|
|
|
|
message Boolean { bool booleanContent = 1;
|
|
|
|
}
|
|
|
|
message Hash { repeated Term hashElements = 1;
|
|
|
|
}
|
|
|
|
message Float { bytes floatContent = 1;
|
|
|
|
}
|
|
|
|
message KeyValue { Term key = 1;
|
|
|
|
Term value = 2;
|
|
|
|
}
|
|
|
|
message Null {
|
|
|
|
}
|
|
|
|
message TextElement { bytes textElementContent = 1;
|
|
|
|
}
|
|
|
|
message Term { oneof syntax {Array array = 1;
|
|
|
|
Boolean boolean = 2;
|
|
|
|
Hash hash = 3;
|
|
|
|
Float float = 4;
|
|
|
|
KeyValue keyValue = 5;
|
|
|
|
Null null = 6;
|
|
|
|
TextElement textElement = 7;}
|
|
|
|
}
|