1
1
mirror of https://github.com/github/semantic.git synced 2024-12-30 02:14:20 +03:00
semantic/proto/ruby_diff.proto

530 lines
8.5 KiB
Protocol Buffer
Raw Normal View History

2018-07-18 01:06:53 +03:00
// This file was generated by proto-gen. Do not edit by hand.
syntax = "proto3";
package github.semantic.rubydiff;
2018-07-18 01:06:53 +03:00
import "types.proto";
option java_package = "com.github.semantic.rubydiff";
option go_package = "github.com/semantic/rubydiff;ruby";
2018-07-18 01:06:53 +03:00
message RubyDiff {
oneof diff {
Merge merge = 1;
Delete delete = 2;
Insert insert = 3;
Replace replace = 4;
}
message Merge {
RubySyntax syntax = 1;
}
message Delete {
RubySyntax before = 1;
}
message Insert {
RubySyntax after = 1;
}
message Replace {
RubySyntax before = 1;
RubySyntax after = 2;
}
}
message RubySyntax {
oneof syntax {
Comment comment = 1;
Function function = 2;
Method method = 3;
2019-01-19 02:43:04 +03:00
AccessControl accessControl = 4;
2018-12-20 06:23:28 +03:00
File file = 5;
Line line = 6;
Plus plus = 7;
Minus minus = 8;
Times times = 9;
DividedBy dividedBy = 10;
Modulo modulo = 11;
Power power = 12;
Negate negate = 13;
FloorDivision floorDivision = 14;
BAnd bAnd = 15;
BOr bOr = 16;
BXOr bXOr = 17;
LShift lShift = 18;
RShift rShift = 19;
Complement complement = 20;
And and = 21;
Not not = 22;
Or or = 23;
XOr xOr = 24;
Call call = 25;
LessThan lessThan = 26;
LessThanEqual lessThanEqual = 27;
GreaterThan greaterThan = 28;
GreaterThanEqual greaterThanEqual = 29;
Equal equal = 30;
StrictEqual strictEqual = 31;
Comparison comparison = 32;
Enumeration enumeration = 33;
Matches matches = 34;
NotMatches notMatches = 35;
MemberAccess memberAccess = 36;
ScopeResolution scopeResolution = 37;
Subscript subscript = 38;
Member member = 39;
This this = 40;
Array array = 41;
Boolean boolean = 42;
Character character = 43;
Complex complex = 44;
EscapeSequence escapeSequence = 45;
Float float = 46;
Hash hash = 47;
Integer integer = 48;
InterpolationElement interpolationElement = 49;
KeyValue keyValue = 50;
Null null = 51;
Rational rational = 52;
Regex regex = 53;
String string = 54;
Symbol symbol = 55;
SymbolElement symbolElement = 56;
TextElement textElement = 57;
Assignment assignment = 58;
Break break = 59;
Catch catch = 60;
Continue continue = 61;
Else else = 62;
Finally finally = 63;
ForEach forEach = 64;
If if = 65;
Match match = 66;
Pattern pattern = 67;
Retry retry = 68;
Return return = 69;
ScopeEntry scopeEntry = 70;
ScopeExit scopeExit = 71;
Statements statements = 72;
Try try = 73;
While while = 74;
Yield yield = 75;
Context context = 76;
Empty empty = 77;
Error error = 78;
Identifier identifier = 79;
Class class = 80;
Load load = 81;
LowPrecedenceAnd lowPrecedenceAnd = 82;
LowPrecedenceOr lowPrecedenceOr = 83;
Module module = 84;
Require require = 85;
Send send = 86;
ZSuper zSuper = 87;
List list = 88;
}
}
2018-07-18 01:06:53 +03:00
message Comment {
string commentContent = 1;
}
message Function {
repeated RubyDiff functionContext = 1;
RubyDiff functionName = 2;
repeated RubyDiff functionParameters = 3;
RubyDiff functionBody = 4;
}
message Method {
repeated RubyDiff methodContext = 1;
2019-01-19 05:20:36 +03:00
RubyDiff methodAccessControl = 2;
2018-12-20 06:23:28 +03:00
RubyDiff methodReceiver = 3;
RubyDiff methodName = 4;
repeated RubyDiff methodParameters = 5;
RubyDiff methodBody = 6;
2018-07-18 01:06:53 +03:00
}
2019-01-19 02:43:04 +03:00
message AccessControl { }
2018-12-20 06:23:28 +03:00
2018-07-18 01:06:53 +03:00
message File { }
message Line { }
message Plus {
RubyDiff lhs = 1;
RubyDiff rhs = 2;
2018-07-18 01:06:53 +03:00
}
message Minus {
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message Times {
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message DividedBy {
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message Modulo {
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message Power {
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message Negate {
RubyDiff value = 1;
}
message FloorDivision {
2018-07-18 01:06:53 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message BAnd {
2018-12-11 00:42:33 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
2018-07-18 01:06:53 +03:00
}
message BOr {
2018-12-11 00:42:33 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
2018-07-18 01:06:53 +03:00
}
message BXOr {
2018-12-11 00:42:33 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
2018-07-18 01:06:53 +03:00
}
message LShift {
2018-12-11 00:42:33 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
2018-07-18 01:06:53 +03:00
}
message RShift {
2018-12-11 00:42:33 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
2018-07-18 01:06:53 +03:00
}
message Complement {
RubyDiff value = 1;
}
message And {
2018-07-18 01:06:53 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message Not {
RubyDiff value = 1;
2018-07-18 01:06:53 +03:00
}
message Or {
2018-07-18 01:06:53 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message XOr {
2018-07-18 01:06:53 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message Call {
repeated RubyDiff callContext = 1;
RubyDiff callFunction = 2;
repeated RubyDiff callParams = 3;
RubyDiff callBlock = 4;
2018-07-18 01:06:53 +03:00
}
message LessThan {
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message LessThanEqual {
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message GreaterThan {
2018-07-18 01:06:53 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message GreaterThanEqual {
2018-07-18 01:06:53 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message Equal {
2018-07-18 01:06:53 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message StrictEqual {
2018-07-18 01:06:53 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message Comparison {
2018-07-18 01:06:53 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message Enumeration {
RubyDiff enumerationStart = 1;
RubyDiff enumerationEnd = 2;
RubyDiff enumerationStep = 3;
2018-07-18 01:06:53 +03:00
}
message Matches {
2018-07-18 01:06:53 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message NotMatches {
2018-07-18 01:06:53 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message MemberAccess {
RubyDiff lhs = 1;
bytes rhs = 2;
2018-07-18 01:06:53 +03:00
}
message ScopeResolution {
repeated RubyDiff scopes = 1;
}
message Subscript {
RubyDiff lhs = 1;
repeated RubyDiff rhs = 2;
}
message Member {
2018-07-18 01:06:53 +03:00
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
2018-08-08 19:39:17 +03:00
message This { }
2018-07-18 01:06:53 +03:00
message Array {
repeated RubyDiff arrayElements = 1;
}
message Boolean {
bool booleanContent = 1;
}
2018-08-13 23:11:07 +03:00
message Character {
string characterContent = 1;
}
2018-07-18 01:06:53 +03:00
message Complex {
string value = 1;
}
2018-08-10 20:39:03 +03:00
message EscapeSequence {
string value = 1;
}
2018-07-18 01:06:53 +03:00
message Float {
string floatContent = 1;
}
message Hash {
repeated RubyDiff hashElements = 1;
}
message Integer {
string integerContent = 1;
}
2018-08-13 23:11:07 +03:00
message InterpolationElement {
RubyDiff interpolationBody = 1;
}
2018-07-18 01:06:53 +03:00
message KeyValue {
RubyDiff key = 1;
RubyDiff value = 2;
}
message Null { }
message Rational {
string value = 1;
}
message Regex {
string regexContent = 1;
}
message String {
repeated RubyDiff stringElements = 1;
}
message Symbol {
2018-08-08 19:39:17 +03:00
repeated RubyDiff symbolElements = 1;
2018-07-18 01:06:53 +03:00
}
2018-08-13 23:11:07 +03:00
message SymbolElement {
string symbolContent = 1;
}
2018-07-18 01:06:53 +03:00
message TextElement {
string textElementContent = 1;
}
message Assignment {
repeated RubyDiff assignmentContext = 1;
RubyDiff assignmentTarget = 2;
RubyDiff assignmentValue = 3;
}
message Break {
2018-08-08 19:39:17 +03:00
RubyDiff value = 1;
2018-07-18 01:06:53 +03:00
}
message Catch {
RubyDiff catchException = 1;
RubyDiff catchBody = 2;
}
message Continue {
2018-08-08 19:39:17 +03:00
RubyDiff value = 1;
2018-07-18 01:06:53 +03:00
}
message Else {
RubyDiff elseCondition = 1;
RubyDiff elseBody = 2;
}
message Finally {
2018-08-08 19:39:17 +03:00
RubyDiff value = 1;
2018-07-18 01:06:53 +03:00
}
message ForEach {
RubyDiff forEachBinding = 1;
RubyDiff forEachSubject = 2;
RubyDiff forEachBody = 3;
}
message If {
RubyDiff ifCondition = 1;
RubyDiff ifThenBody = 2;
RubyDiff ifElseBody = 3;
}
message Match {
RubyDiff matchSubject = 1;
RubyDiff matchPatterns = 2;
}
message Pattern {
RubyDiff value = 1;
RubyDiff patternBody = 2;
}
message Retry {
2018-08-08 19:39:17 +03:00
RubyDiff value = 1;
2018-07-18 01:06:53 +03:00
}
message Return {
2018-08-08 19:39:17 +03:00
RubyDiff value = 1;
2018-07-18 01:06:53 +03:00
}
message ScopeEntry {
repeated RubyDiff terms = 1;
}
message ScopeExit {
repeated RubyDiff terms = 1;
}
message Statements {
repeated RubyDiff statements = 1;
}
message Try {
RubyDiff tryBody = 1;
repeated RubyDiff tryCatch = 2;
}
message While {
RubyDiff whileCondition = 1;
RubyDiff whileBody = 2;
}
message Yield {
2018-08-08 19:39:17 +03:00
RubyDiff value = 1;
2018-07-18 01:06:53 +03:00
}
message Context {
repeated RubyDiff contextTerms = 1;
RubyDiff contextSubject = 2;
}
message Empty { }
message Error {
repeated ErrorSite errorCallStack = 1;
repeated string errorExpected = 2;
string errorActual = 3;
repeated RubyDiff errorChildren = 4;
}
2018-07-18 01:06:53 +03:00
message Identifier {
bytes name = 1;
}
message Class {
RubyDiff classIdentifier = 1;
repeated RubyDiff classSuperClass = 2;
RubyDiff classBody = 3;
}
message Load {
RubyDiff loadPath = 1;
repeated RubyDiff loadWrap = 2;
}
message LowPrecedenceAnd {
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message LowPrecedenceOr {
RubyDiff lhs = 1;
RubyDiff rhs = 2;
}
message Module {
RubyDiff moduleIdentifier = 1;
repeated RubyDiff moduleStatements = 2;
}
message Require {
bool requireRelative = 1;
RubyDiff requirePath = 2;
}
message Send {
repeated RubyDiff sendReceiver = 1;
repeated RubyDiff sendSelector = 2;
repeated RubyDiff sendArgs = 3;
repeated RubyDiff sendBlock = 4;
}
2018-12-11 00:42:33 +03:00
message ZSuper { }
2018-07-18 01:06:53 +03:00
message List {
repeated RubyDiff listContent = 1;
}