Versions in this module Expand all Collapse all v230 v230.0.1 Apr 19, 2023 Changes in this version + var ErrIntOverflowApi = fmt.Errorf("proto: integer overflow") + var ErrInvalidLengthApi = fmt.Errorf("proto: negative length found during unmarshaling") + var ErrUnexpectedEndOfGroupApi = fmt.Errorf("proto: unexpected end of group") + var Facet_ValType_name = map[int32]string + var Facet_ValType_value = map[string]int32 + var Operation_DropOp_name = map[int32]string + var Operation_DropOp_value = map[string]int32 + var Request_RespFormat_name = map[int32]string + var Request_RespFormat_value = map[string]int32 + func RegisterDgraphServer(s *grpc.Server, srv DgraphServer) + type Check struct + func (*Check) Descriptor() ([]byte, []int) + func (*Check) ProtoMessage() + func (m *Check) Marshal() (dAtA []byte, err error) + func (m *Check) MarshalTo(dAtA []byte) (int, error) + func (m *Check) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Check) Reset() + func (m *Check) Size() (n int) + func (m *Check) String() string + func (m *Check) Unmarshal(dAtA []byte) error + func (m *Check) XXX_DiscardUnknown() + func (m *Check) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *Check) XXX_Merge(src proto.Message) + func (m *Check) XXX_Size() int + func (m *Check) XXX_Unmarshal(b []byte) error + type DgraphClient interface + Alter func(ctx context.Context, in *Operation, opts ...grpc.CallOption) (*Payload, error) + CheckVersion func(ctx context.Context, in *Check, opts ...grpc.CallOption) (*Version, error) + CommitOrAbort func(ctx context.Context, in *TxnContext, opts ...grpc.CallOption) (*TxnContext, error) + Login func(ctx context.Context, in *LoginRequest, opts ...grpc.CallOption) (*Response, error) + Query func(ctx context.Context, in *Request, opts ...grpc.CallOption) (*Response, error) + func NewDgraphClient(cc *grpc.ClientConn) DgraphClient + type DgraphServer interface + Alter func(context.Context, *Operation) (*Payload, error) + CheckVersion func(context.Context, *Check) (*Version, error) + CommitOrAbort func(context.Context, *TxnContext) (*TxnContext, error) + Login func(context.Context, *LoginRequest) (*Response, error) + Query func(context.Context, *Request) (*Response, error) + type Facet struct + Alias string + Key string + Tokens []string + ValType Facet_ValType + Value []byte + func (*Facet) Descriptor() ([]byte, []int) + func (*Facet) ProtoMessage() + func (m *Facet) GetAlias() string + func (m *Facet) GetKey() string + func (m *Facet) GetTokens() []string + func (m *Facet) GetValType() Facet_ValType + func (m *Facet) GetValue() []byte + func (m *Facet) Marshal() (dAtA []byte, err error) + func (m *Facet) MarshalTo(dAtA []byte) (int, error) + func (m *Facet) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Facet) Reset() + func (m *Facet) Size() (n int) + func (m *Facet) String() string + func (m *Facet) Unmarshal(dAtA []byte) error + func (m *Facet) XXX_DiscardUnknown() + func (m *Facet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *Facet) XXX_Merge(src proto.Message) + func (m *Facet) XXX_Size() int + func (m *Facet) XXX_Unmarshal(b []byte) error + type Facet_ValType int32 + const Facet_BOOL + const Facet_DATETIME + const Facet_FLOAT + const Facet_INT + const Facet_STRING + func (Facet_ValType) EnumDescriptor() ([]byte, []int) + func (x Facet_ValType) String() string + type Jwt struct + AccessJwt string + RefreshJwt string + func (*Jwt) Descriptor() ([]byte, []int) + func (*Jwt) ProtoMessage() + func (m *Jwt) GetAccessJwt() string + func (m *Jwt) GetRefreshJwt() string + func (m *Jwt) Marshal() (dAtA []byte, err error) + func (m *Jwt) MarshalTo(dAtA []byte) (int, error) + func (m *Jwt) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Jwt) Reset() + func (m *Jwt) Size() (n int) + func (m *Jwt) String() string + func (m *Jwt) Unmarshal(dAtA []byte) error + func (m *Jwt) XXX_DiscardUnknown() + func (m *Jwt) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *Jwt) XXX_Merge(src proto.Message) + func (m *Jwt) XXX_Size() int + func (m *Jwt) XXX_Unmarshal(b []byte) error + type Latency struct + AssignTimestampNs uint64 + EncodingNs uint64 + ParsingNs uint64 + ProcessingNs uint64 + TotalNs uint64 + func (*Latency) Descriptor() ([]byte, []int) + func (*Latency) ProtoMessage() + func (m *Latency) GetAssignTimestampNs() uint64 + func (m *Latency) GetEncodingNs() uint64 + func (m *Latency) GetParsingNs() uint64 + func (m *Latency) GetProcessingNs() uint64 + func (m *Latency) GetTotalNs() uint64 + func (m *Latency) Marshal() (dAtA []byte, err error) + func (m *Latency) MarshalTo(dAtA []byte) (int, error) + func (m *Latency) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Latency) Reset() + func (m *Latency) Size() (n int) + func (m *Latency) String() string + func (m *Latency) Unmarshal(dAtA []byte) error + func (m *Latency) XXX_DiscardUnknown() + func (m *Latency) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *Latency) XXX_Merge(src proto.Message) + func (m *Latency) XXX_Size() int + func (m *Latency) XXX_Unmarshal(b []byte) error + type ListOfString struct + Value []string + func (*ListOfString) Descriptor() ([]byte, []int) + func (*ListOfString) ProtoMessage() + func (m *ListOfString) GetValue() []string + func (m *ListOfString) Marshal() (dAtA []byte, err error) + func (m *ListOfString) MarshalTo(dAtA []byte) (int, error) + func (m *ListOfString) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *ListOfString) Reset() + func (m *ListOfString) Size() (n int) + func (m *ListOfString) String() string + func (m *ListOfString) Unmarshal(dAtA []byte) error + func (m *ListOfString) XXX_DiscardUnknown() + func (m *ListOfString) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *ListOfString) XXX_Merge(src proto.Message) + func (m *ListOfString) XXX_Size() int + func (m *ListOfString) XXX_Unmarshal(b []byte) error + type LoginRequest struct + Namespace uint64 + Password string + RefreshToken string + Userid string + func (*LoginRequest) Descriptor() ([]byte, []int) + func (*LoginRequest) ProtoMessage() + func (m *LoginRequest) GetNamespace() uint64 + func (m *LoginRequest) GetPassword() string + func (m *LoginRequest) GetRefreshToken() string + func (m *LoginRequest) GetUserid() string + func (m *LoginRequest) Marshal() (dAtA []byte, err error) + func (m *LoginRequest) MarshalTo(dAtA []byte) (int, error) + func (m *LoginRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *LoginRequest) Reset() + func (m *LoginRequest) Size() (n int) + func (m *LoginRequest) String() string + func (m *LoginRequest) Unmarshal(dAtA []byte) error + func (m *LoginRequest) XXX_DiscardUnknown() + func (m *LoginRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *LoginRequest) XXX_Merge(src proto.Message) + func (m *LoginRequest) XXX_Size() int + func (m *LoginRequest) XXX_Unmarshal(b []byte) error + type Metrics struct + NumUids map[string]uint64 + func (*Metrics) Descriptor() ([]byte, []int) + func (*Metrics) ProtoMessage() + func (m *Metrics) GetNumUids() map[string]uint64 + func (m *Metrics) Marshal() (dAtA []byte, err error) + func (m *Metrics) MarshalTo(dAtA []byte) (int, error) + func (m *Metrics) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Metrics) Reset() + func (m *Metrics) Size() (n int) + func (m *Metrics) String() string + func (m *Metrics) Unmarshal(dAtA []byte) error + func (m *Metrics) XXX_DiscardUnknown() + func (m *Metrics) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *Metrics) XXX_Merge(src proto.Message) + func (m *Metrics) XXX_Size() int + func (m *Metrics) XXX_Unmarshal(b []byte) error + type Mutation struct + CommitNow bool + Cond string + Del []*NQuad + DelNquads []byte + DeleteJson []byte + Set []*NQuad + SetJson []byte + SetNquads []byte + func (*Mutation) Descriptor() ([]byte, []int) + func (*Mutation) ProtoMessage() + func (m *Mutation) GetCommitNow() bool + func (m *Mutation) GetCond() string + func (m *Mutation) GetDel() []*NQuad + func (m *Mutation) GetDelNquads() []byte + func (m *Mutation) GetDeleteJson() []byte + func (m *Mutation) GetSet() []*NQuad + func (m *Mutation) GetSetJson() []byte + func (m *Mutation) GetSetNquads() []byte + func (m *Mutation) Marshal() (dAtA []byte, err error) + func (m *Mutation) MarshalTo(dAtA []byte) (int, error) + func (m *Mutation) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Mutation) Reset() + func (m *Mutation) Size() (n int) + func (m *Mutation) String() string + func (m *Mutation) Unmarshal(dAtA []byte) error + func (m *Mutation) XXX_DiscardUnknown() + func (m *Mutation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *Mutation) XXX_Merge(src proto.Message) + func (m *Mutation) XXX_Size() int + func (m *Mutation) XXX_Unmarshal(b []byte) error + type NQuad struct + Facets []*Facet + Lang string + Namespace uint64 + ObjectId string + ObjectValue *Value + Predicate string + Subject string + func (*NQuad) Descriptor() ([]byte, []int) + func (*NQuad) ProtoMessage() + func (m *NQuad) GetFacets() []*Facet + func (m *NQuad) GetLang() string + func (m *NQuad) GetNamespace() uint64 + func (m *NQuad) GetObjectId() string + func (m *NQuad) GetObjectValue() *Value + func (m *NQuad) GetPredicate() string + func (m *NQuad) GetSubject() string + func (m *NQuad) Marshal() (dAtA []byte, err error) + func (m *NQuad) MarshalTo(dAtA []byte) (int, error) + func (m *NQuad) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *NQuad) Reset() + func (m *NQuad) Size() (n int) + func (m *NQuad) String() string + func (m *NQuad) Unmarshal(dAtA []byte) error + func (m *NQuad) XXX_DiscardUnknown() + func (m *NQuad) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *NQuad) XXX_Merge(src proto.Message) + func (m *NQuad) XXX_Size() int + func (m *NQuad) XXX_Unmarshal(b []byte) error + type Operation struct + DropAll bool + DropAttr string + DropOp Operation_DropOp + DropValue string + RunInBackground bool + Schema string + func (*Operation) Descriptor() ([]byte, []int) + func (*Operation) ProtoMessage() + func (m *Operation) GetDropAll() bool + func (m *Operation) GetDropAttr() string + func (m *Operation) GetDropOp() Operation_DropOp + func (m *Operation) GetDropValue() string + func (m *Operation) GetRunInBackground() bool + func (m *Operation) GetSchema() string + func (m *Operation) Marshal() (dAtA []byte, err error) + func (m *Operation) MarshalTo(dAtA []byte) (int, error) + func (m *Operation) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Operation) Reset() + func (m *Operation) Size() (n int) + func (m *Operation) String() string + func (m *Operation) Unmarshal(dAtA []byte) error + func (m *Operation) XXX_DiscardUnknown() + func (m *Operation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *Operation) XXX_Merge(src proto.Message) + func (m *Operation) XXX_Size() int + func (m *Operation) XXX_Unmarshal(b []byte) error + type Operation_DropOp int32 + const Operation_ALL + const Operation_ATTR + const Operation_DATA + const Operation_NONE + const Operation_TYPE + func (Operation_DropOp) EnumDescriptor() ([]byte, []int) + func (x Operation_DropOp) String() string + type Payload struct + Data []byte + func (*Payload) Descriptor() ([]byte, []int) + func (*Payload) ProtoMessage() + func (m *Payload) GetData() []byte + func (m *Payload) Marshal() (dAtA []byte, err error) + func (m *Payload) MarshalTo(dAtA []byte) (int, error) + func (m *Payload) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Payload) Reset() + func (m *Payload) Size() (n int) + func (m *Payload) String() string + func (m *Payload) Unmarshal(dAtA []byte) error + func (m *Payload) XXX_DiscardUnknown() + func (m *Payload) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *Payload) XXX_Merge(src proto.Message) + func (m *Payload) XXX_Size() int + func (m *Payload) XXX_Unmarshal(b []byte) error + type Request struct + BestEffort bool + CommitNow bool + Hash string + Mutations []*Mutation + Query string + ReadOnly bool + RespFormat Request_RespFormat + StartTs uint64 + Vars map[string]string + func (*Request) Descriptor() ([]byte, []int) + func (*Request) ProtoMessage() + func (m *Request) GetBestEffort() bool + func (m *Request) GetCommitNow() bool + func (m *Request) GetHash() string + func (m *Request) GetMutations() []*Mutation + func (m *Request) GetQuery() string + func (m *Request) GetReadOnly() bool + func (m *Request) GetRespFormat() Request_RespFormat + func (m *Request) GetStartTs() uint64 + func (m *Request) GetVars() map[string]string + func (m *Request) Marshal() (dAtA []byte, err error) + func (m *Request) MarshalTo(dAtA []byte) (int, error) + func (m *Request) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Request) Reset() + func (m *Request) Size() (n int) + func (m *Request) String() string + func (m *Request) Unmarshal(dAtA []byte) error + func (m *Request) XXX_DiscardUnknown() + func (m *Request) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *Request) XXX_Merge(src proto.Message) + func (m *Request) XXX_Size() int + func (m *Request) XXX_Unmarshal(b []byte) error + type Request_RespFormat int32 + const Request_JSON + const Request_RDF + func (Request_RespFormat) EnumDescriptor() ([]byte, []int) + func (x Request_RespFormat) String() string + type Response struct + Hdrs map[string]*ListOfString + Json []byte + Latency *Latency + Metrics *Metrics + Rdf []byte + Txn *TxnContext + Uids map[string]string + func (*Response) Descriptor() ([]byte, []int) + func (*Response) ProtoMessage() + func (m *Response) GetHdrs() map[string]*ListOfString + func (m *Response) GetJson() []byte + func (m *Response) GetLatency() *Latency + func (m *Response) GetMetrics() *Metrics + func (m *Response) GetRdf() []byte + func (m *Response) GetTxn() *TxnContext + func (m *Response) GetUids() map[string]string + func (m *Response) Marshal() (dAtA []byte, err error) + func (m *Response) MarshalTo(dAtA []byte) (int, error) + func (m *Response) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Response) Reset() + func (m *Response) Size() (n int) + func (m *Response) String() string + func (m *Response) Unmarshal(dAtA []byte) error + func (m *Response) XXX_DiscardUnknown() + func (m *Response) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *Response) XXX_Merge(src proto.Message) + func (m *Response) XXX_Size() int + func (m *Response) XXX_Unmarshal(b []byte) error + type TxnContext struct + Aborted bool + CommitTs uint64 + Hash string + Keys []string + Preds []string + StartTs uint64 + func (*TxnContext) Descriptor() ([]byte, []int) + func (*TxnContext) ProtoMessage() + func (m *TxnContext) GetAborted() bool + func (m *TxnContext) GetCommitTs() uint64 + func (m *TxnContext) GetHash() string + func (m *TxnContext) GetKeys() []string + func (m *TxnContext) GetPreds() []string + func (m *TxnContext) GetStartTs() uint64 + func (m *TxnContext) Marshal() (dAtA []byte, err error) + func (m *TxnContext) MarshalTo(dAtA []byte) (int, error) + func (m *TxnContext) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *TxnContext) Reset() + func (m *TxnContext) Size() (n int) + func (m *TxnContext) String() string + func (m *TxnContext) Unmarshal(dAtA []byte) error + func (m *TxnContext) XXX_DiscardUnknown() + func (m *TxnContext) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *TxnContext) XXX_Merge(src proto.Message) + func (m *TxnContext) XXX_Size() int + func (m *TxnContext) XXX_Unmarshal(b []byte) error + type Uids struct + Uids []string + func (*Uids) Descriptor() ([]byte, []int) + func (*Uids) ProtoMessage() + func (m *Uids) GetUids() []string + func (m *Uids) Marshal() (dAtA []byte, err error) + func (m *Uids) MarshalTo(dAtA []byte) (int, error) + func (m *Uids) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Uids) Reset() + func (m *Uids) Size() (n int) + func (m *Uids) String() string + func (m *Uids) Unmarshal(dAtA []byte) error + func (m *Uids) XXX_DiscardUnknown() + func (m *Uids) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *Uids) XXX_Merge(src proto.Message) + func (m *Uids) XXX_Size() int + func (m *Uids) XXX_Unmarshal(b []byte) error + type UnimplementedDgraphServer struct + func (*UnimplementedDgraphServer) Alter(ctx context.Context, req *Operation) (*Payload, error) + func (*UnimplementedDgraphServer) CheckVersion(ctx context.Context, req *Check) (*Version, error) + func (*UnimplementedDgraphServer) CommitOrAbort(ctx context.Context, req *TxnContext) (*TxnContext, error) + func (*UnimplementedDgraphServer) Login(ctx context.Context, req *LoginRequest) (*Response, error) + func (*UnimplementedDgraphServer) Query(ctx context.Context, req *Request) (*Response, error) + type Value struct + Val isValue_Val + func (*Value) Descriptor() ([]byte, []int) + func (*Value) ProtoMessage() + func (*Value) XXX_OneofWrappers() []interface{} + func (m *Value) GetBoolVal() bool + func (m *Value) GetBytesVal() []byte + func (m *Value) GetDateVal() []byte + func (m *Value) GetDatetimeVal() []byte + func (m *Value) GetDefaultVal() string + func (m *Value) GetDoubleVal() float64 + func (m *Value) GetGeoVal() []byte + func (m *Value) GetIntVal() int64 + func (m *Value) GetPasswordVal() string + func (m *Value) GetStrVal() string + func (m *Value) GetUidVal() uint64 + func (m *Value) GetVal() isValue_Val + func (m *Value) Marshal() (dAtA []byte, err error) + func (m *Value) MarshalTo(dAtA []byte) (int, error) + func (m *Value) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Value) Reset() + func (m *Value) Size() (n int) + func (m *Value) String() string + func (m *Value) Unmarshal(dAtA []byte) error + func (m *Value) XXX_DiscardUnknown() + func (m *Value) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *Value) XXX_Merge(src proto.Message) + func (m *Value) XXX_Size() int + func (m *Value) XXX_Unmarshal(b []byte) error + type Value_BoolVal struct + BoolVal bool + func (m *Value_BoolVal) MarshalTo(dAtA []byte) (int, error) + func (m *Value_BoolVal) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Value_BoolVal) Size() (n int) + type Value_BytesVal struct + BytesVal []byte + func (m *Value_BytesVal) MarshalTo(dAtA []byte) (int, error) + func (m *Value_BytesVal) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Value_BytesVal) Size() (n int) + type Value_DateVal struct + DateVal []byte + func (m *Value_DateVal) MarshalTo(dAtA []byte) (int, error) + func (m *Value_DateVal) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Value_DateVal) Size() (n int) + type Value_DatetimeVal struct + DatetimeVal []byte + func (m *Value_DatetimeVal) MarshalTo(dAtA []byte) (int, error) + func (m *Value_DatetimeVal) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Value_DatetimeVal) Size() (n int) + type Value_DefaultVal struct + DefaultVal string + func (m *Value_DefaultVal) MarshalTo(dAtA []byte) (int, error) + func (m *Value_DefaultVal) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Value_DefaultVal) Size() (n int) + type Value_DoubleVal struct + DoubleVal float64 + func (m *Value_DoubleVal) MarshalTo(dAtA []byte) (int, error) + func (m *Value_DoubleVal) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Value_DoubleVal) Size() (n int) + type Value_GeoVal struct + GeoVal []byte + func (m *Value_GeoVal) MarshalTo(dAtA []byte) (int, error) + func (m *Value_GeoVal) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Value_GeoVal) Size() (n int) + type Value_IntVal struct + IntVal int64 + func (m *Value_IntVal) MarshalTo(dAtA []byte) (int, error) + func (m *Value_IntVal) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Value_IntVal) Size() (n int) + type Value_PasswordVal struct + PasswordVal string + func (m *Value_PasswordVal) MarshalTo(dAtA []byte) (int, error) + func (m *Value_PasswordVal) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Value_PasswordVal) Size() (n int) + type Value_StrVal struct + StrVal string + func (m *Value_StrVal) MarshalTo(dAtA []byte) (int, error) + func (m *Value_StrVal) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Value_StrVal) Size() (n int) + type Value_UidVal struct + UidVal uint64 + func (m *Value_UidVal) MarshalTo(dAtA []byte) (int, error) + func (m *Value_UidVal) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Value_UidVal) Size() (n int) + type Version struct + Tag string + func (*Version) Descriptor() ([]byte, []int) + func (*Version) ProtoMessage() + func (m *Version) GetTag() string + func (m *Version) Marshal() (dAtA []byte, err error) + func (m *Version) MarshalTo(dAtA []byte) (int, error) + func (m *Version) MarshalToSizedBuffer(dAtA []byte) (int, error) + func (m *Version) Reset() + func (m *Version) Size() (n int) + func (m *Version) String() string + func (m *Version) Unmarshal(dAtA []byte) error + func (m *Version) XXX_DiscardUnknown() + func (m *Version) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) + func (m *Version) XXX_Merge(src proto.Message) + func (m *Version) XXX_Size() int + func (m *Version) XXX_Unmarshal(b []byte) error v230.0.1-rc1 Apr 19, 2023 Other modules containing this package github.com/dgraph-io/dgo github.com/dgraph-io/dgo/v2