MCPcopy Index your code
hub / github.com/CovenantSQL/CovenantSQL / Create

Method Create

cmd/cql-fuse/node.go:252–270  ·  view source on GitHub ↗

Create creates a new file in the receiver directory.

(
	ctx context.Context, req *fuse.CreateRequest, resp *fuse.CreateResponse,
)

Source from the content-addressed store, hash-verified

250
251// Create creates a new file in the receiver directory.
252func (n *Node) Create(
253 ctx context.Context, req *fuse.CreateRequest, resp *fuse.CreateResponse,
254) (fs.Node, fs.Handle, error) {
255 if !n.isDir() {
256 return nil, nil, fuse.Errno(syscall.ENOTDIR)
257 }
258 if req.Mode.IsDir() {
259 return nil, nil, fuse.Errno(syscall.EISDIR)
260 } else if !req.Mode.IsRegular() {
261 return nil, nil, fuse.Errno(syscall.EINVAL)
262 }
263
264 node := n.cfs.newFileNode()
265 err := n.cfs.create(ctx, n.ID, req.Name, node)
266 if err != nil {
267 return nil, nil, err
268 }
269 return node, node, nil
270}
271
272// Remove may be unlink or rmdir.
273func (n *Node) Remove(ctx context.Context, req *fuse.RemoveRequest) error {

Callers

nothing calls this directly

Calls 3

isDirMethod · 0.95
newFileNodeMethod · 0.80
createMethod · 0.80

Tested by

no test coverage detected