fmt

package
v0.0.0-...-8cdf743 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 9, 2024 License: MIT Imports: 5 Imported by: 1

Documentation

Overview

Example
exampleRun(`
	fmt := import("fmt")
	fmt.Print("print_")
	fmt.Println("line")
	fmt.Println("a", "b", 3)
	fmt.Printf("%v\n", [1, 2])
	fmt.Println(fmt.Sprint("x", "y", 4))

	a1 := fmt.ScanArg("string")
	a2 := fmt.ScanArg("int")
	r := fmt.Sscanf("abc 123", "%s%d", a1, a2)
	fmt.Println(r)
	fmt.Println(bool(a1), a1.Value)
	fmt.Println(bool(a2), a2.Value)
	`)
Output:

print_line
a b 3
[1, 2]
xy4
2
true abc
true 123

Index

Examples

Constants

This section is empty.

Variables

View Source
var Module = map[string]charlang.Object{

	"Print": &charlang.Function{
		Name: "Print",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newPrint(fmt.Print)(charlang.NewCall(nil, args))
		},
		ValueEx: newPrint(fmt.Print),
	},

	"Printf": &charlang.Function{
		Name: "Printf",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newPrintf(fmt.Printf)(charlang.NewCall(nil, args))
		},
		ValueEx: newPrintf(fmt.Printf),
	},

	"Println": &charlang.Function{
		Name: "Println",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newPrint(fmt.Println)(charlang.NewCall(nil, args))
		},
		ValueEx: newPrint(fmt.Println),
	},

	"Sprint": &charlang.Function{
		Name: "Sprint",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newSprint(fmt.Sprint)(charlang.NewCall(nil, args))
		},
		ValueEx: newSprint(fmt.Sprint),
	},

	"Sprintf": &charlang.Function{
		Name: "Sprintf",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newSprintf(fmt.Sprintf)(charlang.NewCall(nil, args))
		},
		ValueEx: newSprintf(fmt.Sprintf),
	},

	"Sprintln": &charlang.Function{
		Name: "Sprintln",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newSprint(fmt.Sprintln)(charlang.NewCall(nil, args))
		},
		ValueEx: newSprint(fmt.Sprintln),
	},

	"Sscan": &charlang.Function{
		Name: "Sscan",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newSscan(fmt.Sscan)(charlang.NewCall(nil, args))
		},
		ValueEx: newSscan(fmt.Sscan),
	},

	"Sscanf": &charlang.Function{
		Name: "Sscanf",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newSscanf(fmt.Sscanf)(charlang.NewCall(nil, args))
		},
		ValueEx: newSscanf(fmt.Sscanf),
	},

	"Sscanln": &charlang.Function{
		Name: "Sscanln",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newSscan(fmt.Sscanln)(charlang.NewCall(nil, args))
		},
		ValueEx: newSscan(fmt.Sscanln),
	},

	"ScanArg": &charlang.Function{
		Name: "ScanArg",
		Value: func(args ...charlang.Object) (charlang.Object, error) {
			return newScanArgFunc(charlang.NewCall(nil, args))
		},
		ValueEx: newScanArgFunc,
	},
}

Module represents fmt module.

Functions

This section is empty.

Types

type ScanArg

type ScanArg interface {
	// Set sets status of scanning. It is set false before scanning and true
	// after scanning if argument is scanned.
	Set(bool)
	// Arg must return either a pointer to a basic Go type or implementations of
	// fmt.Scanner interface.
	Arg() interface{}
	// Value must return scanned, non-nil Charlang Object.
	Value() charlang.Object
}

ScanArg is an interface that wraps methods required to scan argument with scan functions.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL