aboutsummaryrefslogtreecommitdiffstats
path: root/yql/essentials/providers/common/proto/udf_resolver.proto
blob: 8b6781572649ed50ab9ca77af81f5752f7f7d9f9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
package NYql;
option java_package = "ru.yandex.yql.proto";

message TFunction {
    required string Name = 1;
    required string TypeConfig = 2;
    optional string UserType = 3;
};

message TArgResult {
    required string Name = 1;
    required string Type = 2;
    required string Doc = 3;
    required uint32 Flags = 4;
};

message TFunctionResult {
    optional string NormalizedUserType = 1;
    optional string RunConfigType = 2;
    optional string CallableType = 3;
    optional string Error = 4;
    optional string Name = 5;
    optional string Doc = 7;
    optional bool IsTypeAwareness = 8;
    optional uint32 ArgCount = 9;
    optional uint32 OptionalArgCount = 10;
    repeated TArgResult Args = 11;
    optional string ReturnType = 12;
    optional string ReturnDoc = 13;
    optional bool SupportsBlocks = 14;
    optional bool IsStrict = 15;
};

message TImport {
    required string FileAlias = 1;
    required string Path = 2;
    optional bool System = 3 [default = false];
    optional string CustomUdfPrefix = 4;
};

message TImportResult {
    required string FileAlias = 1;
    repeated string Modules = 2;
    optional string Error = 3;
    optional uint64 FileSize = 4;
    optional string Md5 = 5;
    optional string CustomUdfPrefix = 6;
};

message TResolve {
    repeated TImport Imports = 1;
    repeated TFunction Udfs = 2;
};

message TResolveResult {
    repeated TImportResult Imports = 1;
    repeated TFunctionResult Udfs = 2;
};