syntax = "proto3"; package camino; import "google/protobuf/descriptor.proto"; import "camino/schema.proto"; import "quixos/refs.proto"; extend google.protobuf.FileOptions { string schema_namespace = 51000; string schema_version = 51001; } extend google.protobuf.MessageOptions { ClassOptions class = 51010; repeated MethodOptions method = 51011; repeated MigrationOptions migration = 51012; } extend google.protobuf.FieldOptions { ConflictStrategy conflict = 51020; EdgeOptions edge = 51021; FieldStorage field_storage = 51022; FieldOps field_ops = 51023; } extend google.protobuf.MethodOptions { quixos.FunctionRef impl = 51030; } message ClassOptions { uint32 version = 1; SymbolRef id = 2; } message EdgeOptions { SymbolRef id = 1; SymbolRef target = 2; Cardinality cardinality = 3; string inverse = 4; } message MethodOptions { string name = 1; quixos.FunctionRef function = 2; } message MigrationOptions { uint32 from_version = 1; uint32 to_version = 2; quixos.FunctionRef function = 3; }