Skip to content

Commit

Permalink
(stdio, fs) updated implementations
Browse files Browse the repository at this point in the history
  • Loading branch information
MaxXSoft committed May 2, 2020
1 parent 84a237f commit 31a8c1b
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 15 deletions.
2 changes: 1 addition & 1 deletion src/fs/devfs/fs.yu
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
public import fs.vfs.inode
public import fs.vfs.vfs

import fs.devfs.stdio

Expand Down
28 changes: 14 additions & 14 deletions src/fs/devfs/stdio.yu
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
public import sync.spinlock
public import lib.queue
public import sync.condvar
public import fs.vfs.inode
public import fs.vfs.vfs

import lib.alloc
import lib.io
Expand Down Expand Up @@ -70,31 +70,31 @@ var stdout_ops: INodeOps

public def newStdInINode(stdin: StdIn var*): INode var* {
var inode = heap.alloc(sizeof StdInINode) as StdInINode var*
(inode as INode var*).init(INodeType.CharDevice, &stdin_ops)
(inode as INode var*).init(&stdin_ops)
(*inode).stdin = stdin
inode as INode var*
}

public def newStdOutINode(): INode var* {
var inode = heap.alloc(sizeof StdOutINode) as StdOutINode var*
(inode as INode var*).init(INodeType.CharDevice, &stdout_ops)
(inode as INode var*).init(&stdout_ops)
inode as INode var*
}


/*
* virtual operations of stdio
* inode virtual operations of stdio
*/
def stdIoFind(this: INode var*, name: StrView&): INode var* {
null as INode var*
def stdIoGetFs(this: INode var*): FileSystem var* {
null as FileSystem var*
}

def stdIoGetRoot(this: INode var*): INode var* {
null as INode var*
def stdIoGetMetadata(this: INode var*): Metadata {
[Metadata] {0 as u32, INodeType.CharDevice}
}

def stdIoGetSize(this: INode var*): USize {
0 as USize
def stdIoFind(this: INode var*, name: StrView&): INode var* {
null as INode var*
}

def stdIoRead(this: INode var*, buf: u8 var*, len: USize,
Expand Down Expand Up @@ -136,16 +136,16 @@ def stdOutWrite(this: INode var*, buf: u8*, len: USize,
// initialize virtual operations
public def initStdIoOps() {
// stdin related ops
stdin_ops.op_get_fs = stdIoGetFs
stdin_ops.op_get_metadata = stdIoGetMetadata
stdin_ops.op_find = stdIoFind
stdin_ops.op_get_root = stdIoGetRoot
stdin_ops.op_get_size = stdIoGetSize
stdin_ops.op_read = stdInRead
stdin_ops.op_write = stdIoWrite
stdin_ops.op_cleanup = stdIoCleanUp
// stdout related ops
stdout_ops.op_get_fs = stdIoGetFs
stdout_ops.op_get_metadata = stdIoGetMetadata
stdout_ops.op_find = stdIoFind
stdout_ops.op_get_root = stdIoGetRoot
stdout_ops.op_get_size = stdIoGetSize
stdout_ops.op_read = stdIoRead
stdout_ops.op_write = stdOutWrite
stdout_ops.op_cleanup = stdIoCleanUp
Expand Down

0 comments on commit 31a8c1b

Please sign in to comment.