cli/vsources.bend relies on unsafe/foreign
raw source on the hub · import 0xc13c365900e26112e0e544022d18fe0b/cli/vsources.bend as Vsources
4 imports
import Base import ../lib/effs/io.bend as X import ../lib/vstr.bend as S import ./project.bend as P
Definitions
def size_of source · line 11 · raw
@r:Result<&1, &1, Pair(U32, String), U32> -> U32
---- reading a file ----
def read_done source · line 18 · raw
@r:Pair(File, Result<&1, &1, Pair(U32, String), String>) -> IO(String)
def read_sized source · line 25 · raw
@r:Pair(File, Result<&1, &1, Pair(U32, String), U32>) -> IO(String)
def read_opened source · line 32 · raw
@r:Result<&1, &1, Pair(U32, String), File> -> IO(String)
def read_file source · line 41 · raw
@path:String -> IO(String)
def choose source · line 47 · raw
@c:Bool -> @a:List<&2, String> -> @b:List<&2, String> -> List<&2, String>
---- paths ----
def can_pop source · line 54 · raw
@xs:List<&2, String> -> Bool
def tail_of source · line 61 · raw
@xs:List<&2, String> -> List<&2, String>
def norm_step source · line 68 · raw
@+seg:String -> @+stack:List<&2, String> -> List<&2, String>
def norm_go source · line 71 · raw
@segs:List<&2, String> -> @+stack:List<&2, String> -> List<&2, String>
def norm source · line 79 · raw
@p:String -> String
A path with "." and ".." resolved.
def dir_of source · line 82 · raw
@p:String -> String
def unquote source · line 86 · raw
@+w:String -> String
---- imports ----
def import_of source · line 89 · raw
@+t:String -> String
def relative source · line 92 · raw
@+p:String -> Bool
def keep_import source · line 95 · raw
@+p:String -> @+dir:String -> @+rest:List<&2, String> -> List<&2, String>
def imports_of source · line 99 · raw
@ls:List<&2, String> -> @+dir:String -> List<&2, String>
The repository files a file imports (Bend modules and C effects), relative to the repository.
def seen_in source · line 108 · raw
@+x:String -> @ys:List<&2, String> -> Bool
---- what the packages ship: each entry and everything it imports ---- Each step handles one import, repeats included; files squared bounds them.
def ship source · line 115 · raw
@fuel:Nat -> @+todo:List<&2, String> -> @+seen:List<&2, String> -> @+root:String -> IO(List<&2, String>)
def entries source · line 129 · raw
@ps:List<&2, String> -> @+project:String -> List<&2, String>
def list_text source · line 136 · raw
@xs:List<&2, String> -> String
def sources_text source · line 139 · raw
@+vlib:String -> @+files:List<&2, String> -> @+project:String -> @+shipped:List<&2, String> -> String
def write_sources source · line 145 · raw
@+f:0xc13c365900e26112e0e544022d18fe0b/cli/project.Facts -> IO(Unit)