blob: 3d9836b2529bcf4dec0b634be7a5c081b33e3ffd [file] [log] [blame]
// Copyright 2015 The Vanadium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// This file was auto-generated by the vanadium vdl tool.
// Source: signature.vdl
// Package signature defines types representing interface and method signatures.
package signature
import (
// VDL system imports
"v.io/v23/vdl"
)
// Interface describes the signature of an interface.
type Interface struct {
Name string
PkgPath string
Doc string
Embeds []Embed // No special ordering.
Methods []Method // Ordered by method name.
}
func (Interface) __VDLReflect(struct {
Name string `vdl:"signature.Interface"`
}) {
}
// Embed describes the signature of an embedded interface.
type Embed struct {
Name string
PkgPath string
Doc string
}
func (Embed) __VDLReflect(struct {
Name string `vdl:"signature.Embed"`
}) {
}
// Method describes the signature of an interface method.
type Method struct {
Name string
Doc string
InArgs []Arg // Input arguments
OutArgs []Arg // Output arguments
InStream *Arg // Input stream (optional)
OutStream *Arg // Output stream (optional)
Tags []*vdl.Value // Method tags
}
func (Method) __VDLReflect(struct {
Name string `vdl:"signature.Method"`
}) {
}
// Arg describes the signature of a single argument.
type Arg struct {
Name string
Doc string
Type *vdl.Type // Type of the argument.
}
func (Arg) __VDLReflect(struct {
Name string `vdl:"signature.Arg"`
}) {
}
func init() {
vdl.Register((*Interface)(nil))
vdl.Register((*Embed)(nil))
vdl.Register((*Method)(nil))
vdl.Register((*Arg)(nil))
}