Updated module path

This commit is contained in:
Eduard Urbach 2025-02-25 17:16:09 +01:00
parent 98edfb19fd
commit 91f34bc88f
Signed by: akyoto
GPG Key ID: C874F672B1AF20C0
211 changed files with 506 additions and 506 deletions

View File

@ -12,7 +12,7 @@ A programming language that compiles down to machine code.
## Installation ## Installation
```shell ```shell
git clone https://git.akyoto.dev/cli/q git clone https://git.urbach.dev/cli/q
cd q cd q
go build go build
``` ```
@ -48,13 +48,13 @@ q build examples/hello --os windows
## Status ## Status
`q` is under heavy development and not ready for production yet. `q` is under heavy development and not ready for production yet.
Feel free to [get in touch](https://akyoto.dev/contact) if you are interested in helping out. Feel free to [get in touch](https://urbach.dev/contact) if you are interested in helping out.
The biggest obstacle right now is the lack of funding. If you want to help out financially you can [donate towards the project](https://en.liberapay.com/akyoto). The biggest obstacle right now is the lack of funding. If you want to help out financially you can [donate towards the project](https://en.liberapay.com/akyoto).
## License ## License
Please see the [license documentation](https://akyoto.dev/license). Please see the [license documentation](https://urbach.dev/license).
## Copyright ## Copyright

6
go.mod
View File

@ -1,10 +1,10 @@
module git.akyoto.dev/cli/q module git.urbach.dev/cli/q
go 1.24 go 1.24
require ( require (
git.akyoto.dev/go/assert v0.1.3 git.urbach.dev/go/assert v0.0.0-20250225153414-fc1f84f19edf
git.akyoto.dev/go/color v0.1.3 git.urbach.dev/go/color v0.0.0-20250225153715-1b0b4cb28f7d
) )
require golang.org/x/sys v0.30.0 // indirect require golang.org/x/sys v0.30.0 // indirect

8
go.sum
View File

@ -1,6 +1,6 @@
git.akyoto.dev/go/assert v0.1.3 h1:QwCUbmG4aZYsNk/OuRBz1zWVKmGlDUHhOnnDBfn8Qw8= git.urbach.dev/go/assert v0.0.0-20250225153414-fc1f84f19edf h1:BQWa5GKNUsA5CSUa/+UlFWYCEVe3IDDKRbVqBLK0mAE=
git.akyoto.dev/go/assert v0.1.3/go.mod h1:0GzMaM0eURuDwtGkJJkCsI7r2aUKr+5GmWNTFPgDocM= git.urbach.dev/go/assert v0.0.0-20250225153414-fc1f84f19edf/go.mod h1:y9jGII9JFiF1HNIju0u87OyPCt82xKCtqnAFyEreCDo=
git.akyoto.dev/go/color v0.1.3 h1:kqOVYaPJJDHi8qEwTZkZecQaUENBToaLmiiV1Gg++GM= git.urbach.dev/go/color v0.0.0-20250225153715-1b0b4cb28f7d h1:j1ARCrjUYE/c1STH/s6UYGQoOXAkxXll4AFhTb8P2GE=
git.akyoto.dev/go/color v0.1.3/go.mod h1:e00cRnX0fzFyIYEpAA7dCR/Hlk0/2YpXpVQaMT5Zoss= git.urbach.dev/go/color v0.0.0-20250225153715-1b0b4cb28f7d/go.mod h1:UE8tQTrlWeVPKhfPZ9G5QrDFRhL9EoPazcDgfgd5Xsk=
golang.org/x/sys v0.30.0 h1:QjkSwP/36a20jFYWkSue1YwXzLmsV5Gfq7Eiy72C1uc= golang.org/x/sys v0.30.0 h1:QjkSwP/36a20jFYWkSue1YwXzLmsV5Gfq7Eiy72C1uc=
golang.org/x/sys v0.30.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.30.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=

View File

@ -3,7 +3,7 @@ package main
import ( import (
"os" "os"
"git.akyoto.dev/cli/q/src/cli" "git.urbach.dev/cli/q/src/cli"
) )
func main() { func main() {

View File

@ -1,6 +1,6 @@
package arm package arm
import "git.akyoto.dev/cli/q/src/cpu" import "git.urbach.dev/cli/q/src/cpu"
const ( const (
X0 cpu.Register = iota X0 cpu.Register = iota

View File

@ -3,8 +3,8 @@ package arm_test
import ( import (
"testing" "testing"
"git.akyoto.dev/cli/q/src/arm" "git.urbach.dev/cli/q/src/arm"
"git.akyoto.dev/go/assert" "git.urbach.dev/go/assert"
) )
func TestRegisters(t *testing.T) { func TestRegisters(t *testing.T) {

View File

@ -3,7 +3,7 @@ package asm
import ( import (
"maps" "maps"
"git.akyoto.dev/cli/q/src/data" "git.urbach.dev/cli/q/src/data"
) )
// Assembler contains a list of instructions. // Assembler contains a list of instructions.

View File

@ -1,6 +1,6 @@
package asm package asm
import "git.akyoto.dev/cli/q/src/cpu" import "git.urbach.dev/cli/q/src/cpu"
// CanSkip returns true if the register/register operation can be skipped. // CanSkip returns true if the register/register operation can be skipped.
func (a *Assembler) CanSkip(mnemonic Mnemonic, left cpu.Register, right cpu.Register) bool { func (a *Assembler) CanSkip(mnemonic Mnemonic, left cpu.Register, right cpu.Register) bool {

View File

@ -6,7 +6,7 @@ import (
"strconv" "strconv"
"strings" "strings"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
) )
type Memory struct { type Memory struct {

View File

@ -3,7 +3,7 @@ package asm
import ( import (
"fmt" "fmt"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
) )
// MemoryRegister operates with a memory address and a number. // MemoryRegister operates with a memory address and a number.

View File

@ -1,7 +1,7 @@
package asm package asm
import ( import (
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
) )
// Register operates with a single register. // Register operates with a single register.

View File

@ -3,7 +3,7 @@ package asm
import ( import (
"fmt" "fmt"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
) )
// RegisterLabel operates with a register and a label. // RegisterLabel operates with a register and a label.

View File

@ -3,7 +3,7 @@ package asm
import ( import (
"fmt" "fmt"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
) )
// RegisterNumber operates with a register and a number. // RegisterNumber operates with a register and a number.

View File

@ -3,7 +3,7 @@ package asm
import ( import (
"fmt" "fmt"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
) )
// RegisterRegister operates with two registers. // RegisterRegister operates with two registers.

View File

@ -1,9 +1,9 @@
package asmc package asmc
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/config" "git.urbach.dev/cli/q/src/config"
"git.akyoto.dev/cli/q/src/dll" "git.urbach.dev/cli/q/src/dll"
) )
// Finalize generates the final machine code. // Finalize generates the final machine code.

View File

@ -1,8 +1,8 @@
package asmc package asmc
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/x86" "git.urbach.dev/cli/q/src/x86"
) )
func (c *compiler) call(x asm.Instruction) { func (c *compiler) call(x asm.Instruction) {

View File

@ -1,11 +1,11 @@
package asmc package asmc
import ( import (
"git.akyoto.dev/cli/q/src/config" "git.urbach.dev/cli/q/src/config"
"git.akyoto.dev/cli/q/src/elf" "git.urbach.dev/cli/q/src/elf"
"git.akyoto.dev/cli/q/src/fs" "git.urbach.dev/cli/q/src/fs"
"git.akyoto.dev/cli/q/src/macho" "git.urbach.dev/cli/q/src/macho"
"git.akyoto.dev/cli/q/src/pe" "git.urbach.dev/cli/q/src/pe"
) )
// codeOffset returns the file offset of the code section. // codeOffset returns the file offset of the code section.

View File

@ -1,8 +1,8 @@
package asmc package asmc
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/x86" "git.urbach.dev/cli/q/src/x86"
) )
func (c *compiler) compile(x asm.Instruction) { func (c *compiler) compile(x asm.Instruction) {

View File

@ -1,6 +1,6 @@
package asmc package asmc
import "git.akyoto.dev/cli/q/src/dll" import "git.urbach.dev/cli/q/src/dll"
type compiler struct { type compiler struct {
code []byte code []byte

View File

@ -3,8 +3,8 @@ package asmc
import ( import (
"strings" "strings"
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/x86" "git.urbach.dev/cli/q/src/x86"
) )
func (c *compiler) dllCall(x asm.Instruction) { func (c *compiler) dllCall(x asm.Instruction) {

View File

@ -1,8 +1,8 @@
package asmc package asmc
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/x86" "git.urbach.dev/cli/q/src/x86"
) )
func (c *compiler) jump(x asm.Instruction) { func (c *compiler) jump(x asm.Instruction) {

View File

@ -3,8 +3,8 @@ package asmc
import ( import (
"math" "math"
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/x86" "git.urbach.dev/cli/q/src/x86"
) )
func (c *compiler) load(x asm.Instruction) { func (c *compiler) load(x asm.Instruction) {

View File

@ -3,9 +3,9 @@ package asmc
import ( import (
"strings" "strings"
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/config" "git.urbach.dev/cli/q/src/config"
"git.akyoto.dev/cli/q/src/x86" "git.urbach.dev/cli/q/src/x86"
) )
func (c *compiler) move(x asm.Instruction) { func (c *compiler) move(x asm.Instruction) {

View File

@ -5,9 +5,9 @@ import (
"fmt" "fmt"
"slices" "slices"
"git.akyoto.dev/cli/q/src/config" "git.urbach.dev/cli/q/src/config"
"git.akyoto.dev/cli/q/src/fs" "git.urbach.dev/cli/q/src/fs"
"git.akyoto.dev/cli/q/src/sizeof" "git.urbach.dev/cli/q/src/sizeof"
) )
// resolvePointers resolves the addresses of all pointers within the code and writes the correct addresses to the code slice. // resolvePointers resolves the addresses of all pointers within the code and writes the correct addresses to the code slice.

View File

@ -3,9 +3,9 @@ package asmc
import ( import (
"math" "math"
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/config" "git.urbach.dev/cli/q/src/config"
"git.akyoto.dev/cli/q/src/x86" "git.urbach.dev/cli/q/src/x86"
) )
func (c *compiler) store(x asm.Instruction) { func (c *compiler) store(x asm.Instruction) {

View File

@ -1,6 +1,6 @@
package ast package ast
import "git.akyoto.dev/cli/q/src/expression" import "git.urbach.dev/cli/q/src/expression"
// Node is an interface used for all types of AST nodes. // Node is an interface used for all types of AST nodes.
type Node any type Node any

View File

@ -1,6 +1,6 @@
package ast package ast
import "git.akyoto.dev/cli/q/src/token" import "git.urbach.dev/cli/q/src/token"
// Count counts how often the given token appears in the AST. // Count counts how often the given token appears in the AST.
func Count(body AST, buffer []byte, kind token.Kind, name string) uint8 { func Count(body AST, buffer []byte, kind token.Kind, name string) uint8 {

View File

@ -1,8 +1,8 @@
package ast package ast
import ( import (
"git.akyoto.dev/cli/q/src/fs" "git.urbach.dev/cli/q/src/fs"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// Parse generates an AST from a list of tokens. // Parse generates an AST from a list of tokens.

View File

@ -3,10 +3,10 @@ package ast_test
import ( import (
"testing" "testing"
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
"git.akyoto.dev/cli/q/src/fs" "git.urbach.dev/cli/q/src/fs"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
"git.akyoto.dev/go/assert" "git.urbach.dev/go/assert"
) )
func TestAssign(t *testing.T) { func TestAssign(t *testing.T) {

View File

@ -1,9 +1,9 @@
package ast package ast
import ( import (
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/fs" "git.urbach.dev/cli/q/src/fs"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// block retrieves the start and end position of a block. // block retrieves the start and end position of a block.

View File

@ -1,6 +1,6 @@
package ast package ast
import "git.akyoto.dev/cli/q/src/token" import "git.urbach.dev/cli/q/src/token"
// eachInstruction calls the function on each AST node. // eachInstruction calls the function on each AST node.
func eachInstruction(tokens token.List, call func(token.List) error) error { func eachInstruction(tokens token.List, call func(token.List) error) error {

View File

@ -1,8 +1,8 @@
package ast package ast
import ( import (
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// IsAssignment returns true if the expression is an assignment. // IsAssignment returns true if the expression is an assignment.

View File

@ -1,9 +1,9 @@
package ast package ast
import ( import (
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/fs" "git.urbach.dev/cli/q/src/fs"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// parseCases generates the cases inside a switch statement. // parseCases generates the cases inside a switch statement.

View File

@ -1,10 +1,10 @@
package ast package ast
import ( import (
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/fs" "git.urbach.dev/cli/q/src/fs"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// parseInstruction generates an AST node from an instruction. // parseInstruction generates an AST node from an instruction.

View File

@ -1,10 +1,10 @@
package ast package ast
import ( import (
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/fs" "git.urbach.dev/cli/q/src/fs"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// parseKeyword generates a keyword node from an instruction. // parseKeyword generates a keyword node from an instruction.

View File

@ -4,7 +4,7 @@ import (
"path/filepath" "path/filepath"
"strings" "strings"
"git.akyoto.dev/cli/q/src/config" "git.urbach.dev/cli/q/src/config"
) )
// Executable returns the path to the executable. // Executable returns the path to the executable.

View File

@ -1,8 +1,8 @@
package build package build
import ( import (
"git.akyoto.dev/cli/q/src/compiler" "git.urbach.dev/cli/q/src/compiler"
"git.akyoto.dev/cli/q/src/scanner" "git.urbach.dev/cli/q/src/scanner"
) )
// Run compiles the input files. // Run compiles the input files.

View File

@ -4,9 +4,9 @@ import (
"path/filepath" "path/filepath"
"testing" "testing"
"git.akyoto.dev/cli/q/src/build" "git.urbach.dev/cli/q/src/build"
"git.akyoto.dev/cli/q/src/config" "git.urbach.dev/cli/q/src/config"
"git.akyoto.dev/go/assert" "git.urbach.dev/go/assert"
) )
func TestBuildDirectory(t *testing.T) { func TestBuildDirectory(t *testing.T) {

View File

@ -6,8 +6,8 @@ import (
"runtime" "runtime"
"strings" "strings"
"git.akyoto.dev/cli/q/src/build" "git.urbach.dev/cli/q/src/build"
"git.akyoto.dev/cli/q/src/config" "git.urbach.dev/cli/q/src/config"
) )
// Build parses the arguments and creates a build. // Build parses the arguments and creates a build.

View File

@ -3,9 +3,9 @@ package cli_test
import ( import (
"testing" "testing"
"git.akyoto.dev/cli/q/src/cli" "git.urbach.dev/cli/q/src/cli"
"git.akyoto.dev/cli/q/src/config" "git.urbach.dev/cli/q/src/config"
"git.akyoto.dev/go/assert" "git.urbach.dev/go/assert"
) )
func TestCLI(t *testing.T) { func TestCLI(t *testing.T) {

View File

@ -5,7 +5,7 @@ import (
"runtime" "runtime"
"strconv" "strconv"
"git.akyoto.dev/cli/q/src/config" "git.urbach.dev/cli/q/src/config"
) )
// System shows system information. // System shows system information.

View File

@ -1,10 +1,10 @@
package compiler package compiler
import ( import (
"git.akyoto.dev/cli/q/src/core" "git.urbach.dev/cli/q/src/core"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/fs" "git.urbach.dev/cli/q/src/fs"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
// Compile waits for the scan to finish and compiles all functions. // Compile waits for the scan to finish and compiles all functions.

View File

@ -3,7 +3,7 @@ package compiler
import ( import (
"sync" "sync"
"git.akyoto.dev/cli/q/src/core" "git.urbach.dev/cli/q/src/core"
) )
// CompileFunctions starts a goroutine for each function compilation and waits for completion. // CompileFunctions starts a goroutine for each function compilation and waits for completion.

View File

@ -1,6 +1,6 @@
package compiler package compiler
import "git.akyoto.dev/cli/q/src/core" import "git.urbach.dev/cli/q/src/core"
// PrintInstructions prints out the generated instructions. // PrintInstructions prints out the generated instructions.
func (r *Result) PrintInstructions() { func (r *Result) PrintInstructions() {

View File

@ -3,7 +3,7 @@ package compiler
import ( import (
"fmt" "fmt"
"git.akyoto.dev/go/color/ansi" "git.urbach.dev/go/color/ansi"
) )
// PrintStatistics shows the statistics. // PrintStatistics shows the statistics.

View File

@ -1,8 +1,8 @@
package compiler package compiler
import ( import (
"git.akyoto.dev/cli/q/src/core" "git.urbach.dev/cli/q/src/core"
"git.akyoto.dev/cli/q/src/dll" "git.urbach.dev/cli/q/src/dll"
) )
// Result contains everything we need to write an executable file to disk. // Result contains everything we need to write an executable file to disk.

View File

@ -4,11 +4,11 @@ import (
"bufio" "bufio"
"io" "io"
"git.akyoto.dev/cli/q/src/config" "git.urbach.dev/cli/q/src/config"
"git.akyoto.dev/cli/q/src/dll" "git.urbach.dev/cli/q/src/dll"
"git.akyoto.dev/cli/q/src/elf" "git.urbach.dev/cli/q/src/elf"
"git.akyoto.dev/cli/q/src/macho" "git.urbach.dev/cli/q/src/macho"
"git.akyoto.dev/cli/q/src/pe" "git.urbach.dev/cli/q/src/pe"
) )
// Write writes the executable to the given writer. // Write writes the executable to the given writer.

View File

@ -1,8 +1,8 @@
package compiler package compiler
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/core" "git.urbach.dev/cli/q/src/core"
) )
// eachFunction recursively finds all the calls to external functions. // eachFunction recursively finds all the calls to external functions.

View File

@ -1,11 +1,11 @@
package compiler package compiler
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/asmc" "git.urbach.dev/cli/q/src/asmc"
"git.akyoto.dev/cli/q/src/config" "git.urbach.dev/cli/q/src/config"
"git.akyoto.dev/cli/q/src/core" "git.urbach.dev/cli/q/src/core"
"git.akyoto.dev/cli/q/src/x86" "git.urbach.dev/cli/q/src/x86"
) )
// finalize generates the final machine code. // finalize generates the final machine code.

View File

@ -3,12 +3,12 @@ package core
import ( import (
"math" "math"
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
// ArrayElementToRegister moves the value of an array element into the given register. // ArrayElementToRegister moves the value of an array element into the given register.

View File

@ -4,11 +4,11 @@ import (
"fmt" "fmt"
"slices" "slices"
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
"git.akyoto.dev/cli/q/src/x86" "git.urbach.dev/cli/q/src/x86"
) )
// CallExtern calls an external function. // CallExtern calls an external function.

View File

@ -3,8 +3,8 @@ package core
import ( import (
"slices" "slices"
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
) )
// CallSafe pushes used registers to the stack, executes the call and restores the original register value. // CallSafe pushes used registers to the stack, executes the call and restores the original register value.

View File

@ -1,10 +1,10 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
// CallToRegister moves the result of a function call into the given register. // CallToRegister moves the result of a function call into the given register.

View File

@ -1,10 +1,10 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// Compare evaluates a boolean expression. // Compare evaluates a boolean expression.

View File

@ -1,7 +1,7 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
) )
// CompileAST compiles an abstract syntax tree. // CompileAST compiles an abstract syntax tree.

View File

@ -1,7 +1,7 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
) )
// CompileASTNode compiles a node in the AST. // CompileASTNode compiles a node in the AST.

View File

@ -1,8 +1,8 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
) )
// CompileAssert compiles an assertion. // CompileAssert compiles an assertion.

View File

@ -1,11 +1,11 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// CompileAssign compiles an assign statement. // CompileAssign compiles an assign statement.

View File

@ -3,10 +3,10 @@ package core
import ( import (
"math" "math"
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
// CompileAssignArray compiles an assign statement for array elements. // CompileAssignArray compiles an assign statement for array elements.

View File

@ -1,13 +1,13 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/scope" "git.urbach.dev/cli/q/src/scope"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
"git.akyoto.dev/cli/q/src/x86" "git.urbach.dev/cli/q/src/x86"
) )
// CompileAssignDivision compiles an assign statement that has quotient and remainder on the left side and division on the right. // CompileAssignDivision compiles an assign statement that has quotient and remainder on the left side and division on the right.

View File

@ -3,10 +3,10 @@ package core
import ( import (
"math" "math"
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
// CompileAssignField compiles a memory write to a struct field. // CompileAssignField compiles a memory write to a struct field.

View File

@ -1,9 +1,9 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
// CompileCall executes a function call. // CompileCall executes a function call.

View File

@ -1,8 +1,8 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// CompileCondition inserts code to jump to the start label or end label depending on the truth of the condition. // CompileCondition inserts code to jump to the start label or end label depending on the truth of the condition.

View File

@ -1,11 +1,11 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// CompileDefinition compiles a variable definition. // CompileDefinition compiles a variable definition.

View File

@ -1,10 +1,10 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
// CompileDelete compiles a `delete` function call which deallocates a struct. // CompileDelete compiles a `delete` function call which deallocates a struct.

View File

@ -1,11 +1,11 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// CompileFor compiles a for loop. // CompileFor compiles a for loop.

View File

@ -1,8 +1,8 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
) )
// CompileIf compiles a branch instruction. // CompileIf compiles a branch instruction.

View File

@ -3,10 +3,10 @@ package core
import ( import (
"math" "math"
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
var _len = Function{OutputTypes: []types.Type{types.Int}} var _len = Function{OutputTypes: []types.Type{types.Int}}

View File

@ -1,8 +1,8 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
) )
// CompileLoop compiles an infinite loop. // CompileLoop compiles an infinite loop.

View File

@ -3,9 +3,9 @@ package core
import ( import (
"math" "math"
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
) )
// CompileMemoryStore compiles a variable-width store to memory. // CompileMemoryStore compiles a variable-width store to memory.

View File

@ -1,10 +1,10 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
// CompileNew compiles a `new` function call which allocates a struct. // CompileNew compiles a `new` function call which allocates a struct.

View File

@ -1,8 +1,8 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
) )
// CompileReturn compiles a return instruction. // CompileReturn compiles a return instruction.

View File

@ -1,8 +1,8 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
) )
// CompileSwitch compiles a multi-branch instruction. // CompileSwitch compiles a multi-branch instruction.

View File

@ -1,7 +1,7 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
) )
// CompileSyscall executes a kernel syscall. // CompileSyscall executes a kernel syscall.

View File

@ -1,8 +1,8 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// CompileTokens compiles a token list. // CompileTokens compiles a token list.

View File

@ -1,8 +1,8 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/fs" "git.urbach.dev/cli/q/src/fs"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// Constant registers a single value to be accessible under a descriptive name. // Constant registers a single value to be accessible under a descriptive name.

View File

@ -1,10 +1,10 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/scope" "git.urbach.dev/cli/q/src/scope"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// Define defines a new variable. // Define defines a new variable.

View File

@ -1,8 +1,8 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/fs" "git.urbach.dev/cli/q/src/fs"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
// Environment holds information about the entire build. // Environment holds information about the entire build.

View File

@ -1,11 +1,11 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
// Evaluate evaluates an expression and returns a register that contains the value of the expression. // Evaluate evaluates an expression and returns a register that contains the value of the expression.

View File

@ -1,10 +1,10 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// Execute executes an operation on a register with a value operand. // Execute executes an operation on a register with a value operand.

View File

@ -1,9 +1,9 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// ExecuteLeaf performs an operation on a register with the given leaf operand. // ExecuteLeaf performs an operation on a register with the given leaf operand.

View File

@ -1,10 +1,10 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// ExecuteRegister performs an operation on a single register. // ExecuteRegister performs an operation on a single register.

View File

@ -1,11 +1,11 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
"git.akyoto.dev/cli/q/src/x86" "git.urbach.dev/cli/q/src/x86"
) )
// ExecuteRegisterNumber performs an operation on a register and a number. // ExecuteRegisterNumber performs an operation on a register and a number.

View File

@ -1,11 +1,11 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
"git.akyoto.dev/cli/q/src/x86" "git.urbach.dev/cli/q/src/x86"
) )
// ExecuteRegisterRegister performs an operation on two registers. // ExecuteRegisterRegister performs an operation on two registers.

View File

@ -1,11 +1,11 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
// ExpressionToMemory puts the result of an expression into the specified memory address. // ExpressionToMemory puts the result of an expression into the specified memory address.

View File

@ -1,12 +1,12 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
// ExpressionToRegister puts the result of an expression into the specified register. // ExpressionToRegister puts the result of an expression into the specified register.

View File

@ -1,11 +1,11 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
// ExpressionsToRegisters moves multiple expressions into the specified registers and checks that the types match with the function signature. // ExpressionsToRegisters moves multiple expressions into the specified registers and checks that the types match with the function signature.

View File

@ -1,9 +1,9 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/config" "git.urbach.dev/cli/q/src/config"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// Fold will try to precalculate the results of operations with constants. // Fold will try to precalculate the results of operations with constants.

View File

@ -1,11 +1,11 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/dll" "git.urbach.dev/cli/q/src/dll"
"git.akyoto.dev/cli/q/src/fs" "git.urbach.dev/cli/q/src/fs"
"git.akyoto.dev/cli/q/src/register" "git.urbach.dev/cli/q/src/register"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
// Function represents the smallest unit of code. // Function represents the smallest unit of code.

View File

@ -3,7 +3,7 @@ package core
import ( import (
"fmt" "fmt"
"git.akyoto.dev/cli/q/src/scope" "git.urbach.dev/cli/q/src/scope"
) )
// Identifier looks up an identifier which can be a variable or a function. // Identifier looks up an identifier which can be a variable or a function.

View File

@ -1,8 +1,8 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// JumpIfFalse jumps to the label if the previous comparison was false. // JumpIfFalse jumps to the label if the previous comparison was false.

View File

@ -1,8 +1,8 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// JumpIfTrue jumps to the label if the previous comparison was true. // JumpIfTrue jumps to the label if the previous comparison was true.

View File

@ -1,12 +1,12 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
"git.akyoto.dev/cli/q/src/fs" "git.urbach.dev/cli/q/src/fs"
"git.akyoto.dev/cli/q/src/register" "git.urbach.dev/cli/q/src/register"
"git.akyoto.dev/cli/q/src/scope" "git.urbach.dev/cli/q/src/scope"
"git.akyoto.dev/cli/q/src/x86" "git.urbach.dev/cli/q/src/x86"
) )
// NewFunction creates a new function. // NewFunction creates a new function.

View File

@ -1,8 +1,8 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
type Parameter struct { type Parameter struct {

View File

@ -4,11 +4,11 @@ import (
"fmt" "fmt"
"math" "math"
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
// PeriodToRegister moves a constant or a function address into the given register. // PeriodToRegister moves a constant or a function address into the given register.

View File

@ -4,8 +4,8 @@ import (
"bytes" "bytes"
"fmt" "fmt"
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/go/color/ansi" "git.urbach.dev/go/color/ansi"
) )
// PrintInstructions shows the assembly instructions. // PrintInstructions shows the assembly instructions.

View File

@ -1,11 +1,11 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/scope" "git.urbach.dev/cli/q/src/scope"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
"git.akyoto.dev/cli/q/src/x86" "git.urbach.dev/cli/q/src/x86"
) )
// ResolveTypes parses the input and output types. // ResolveTypes parses the input and output types.

View File

@ -5,9 +5,9 @@ import (
"strings" "strings"
"unicode/utf8" "unicode/utf8"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/fs" "git.urbach.dev/cli/q/src/fs"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// ToNumber tries to convert the token into a numeric value. // ToNumber tries to convert the token into a numeric value.

View File

@ -3,11 +3,11 @@ package core
import ( import (
"encoding/binary" "encoding/binary"
"git.akyoto.dev/cli/q/src/asm" "git.urbach.dev/cli/q/src/asm"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
"git.akyoto.dev/cli/q/src/errors" "git.urbach.dev/cli/q/src/errors"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
"git.akyoto.dev/cli/q/src/types" "git.urbach.dev/cli/q/src/types"
) )
// TokenToRegister moves a token into a register. // TokenToRegister moves a token into a register.

View File

@ -1,10 +1,10 @@
package core package core
import ( import (
"git.akyoto.dev/cli/q/src/ast" "git.urbach.dev/cli/q/src/ast"
"git.akyoto.dev/cli/q/src/cpu" "git.urbach.dev/cli/q/src/cpu"
"git.akyoto.dev/cli/q/src/expression" "git.urbach.dev/cli/q/src/expression"
"git.akyoto.dev/cli/q/src/token" "git.urbach.dev/cli/q/src/token"
) )
// UsesRegister returns true if evaluating the expression would write or read the given register. // UsesRegister returns true if evaluating the expression would write or read the given register.

Some files were not shown because too many files have changed in this diff Show More