code: func (l VirtualDeviceList) ChildDisk(parent *types.VirtualDisk) *types.VirtualDisk {
  	disk := *parent
  	backing := disk.Backing.(*types.VirtualDiskFlatVer2BackingInfo)
  	p := new(DatastorePath)
  	p.FromString(backing.FileName)
  	p.Path = ""
  
  	// Use specified disk as parent backing to a new disk.
  	disk.Backing = &types.VirtualDiskFlatVer2BackingInfo{
  		VirtualDeviceFileBackingInfo: types.VirtualDeviceFileBackingInfo{
  			FileName:  p.String(),
  			Datastore: backing.Datastore,
  		},
  		Parent:          backing,
  		DiskMode:        backing.DiskMode,
  		ThinProvisioned: backing.ThinProvisioned,
  	}
  
  	return &disk
  }
docs: // ChildDisk creates a new VirtualDisk device, linked to the given parent disk, which can be added to a VM.