jst

package
v0.0.0-...-4d5cdd4 Latest Latest
Warning

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

Go to latest
Published: Dec 27, 2023 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DebugWriter io.Writer

Functions

func CreateDefaultExtensions

func CreateDefaultExtensions(lateBind bool) []commonjs.Extension

func CreateScriptletExtension

func CreateScriptletExtension(jsContext *commonjs.Context) any

(commonjs.CreateExtensionFunc signature)

func NewDefaultEnvironment

func NewDefaultEnvironment(log commonlog.Logger, urlContext *exturl.Context, basePaths ...exturl.URL) *commonjs.Environment

func Precompile

func Precompile(url exturl.URL, script string, jsContext *commonjs.Context) (string, error)

(commonjs.PrecompileFunc signature)

func Present

func Present(environment *commonjs.Environment, object *goja.Object, writer io.Writer, variables ard.StringMap) error

func RegisterDefaultRenderers

func RegisterDefaultRenderers()

func RegisterSugar

func RegisterSugar(prefix string, handle HandleSugarFunc)

func RenderJST

func RenderJST(writer io.Writer, content any, js bool, jsContext *commonjs.Context) error

([scriptlet.RenderFunc] signature)

func RequireAndPresent

func RequireAndPresent(environment *commonjs.Environment, id string, writer io.Writer, variables ard.StringMap) error

func RequireAndPresentString

func RequireAndPresentString(environment *commonjs.Environment, id string, variables ard.StringMap) (string, error)

func UnwrapWriters

func UnwrapWriters(writer io.Writer) (io.Writer, error)

Types

type CaptureWriter

type CaptureWriter struct {
	// contains filtered or unexported fields
}

func NewCaptureWriter

func NewCaptureWriter(originalWriter io.Writer, name string, onCaptured CapturedFunc) *CaptureWriter

func (*CaptureWriter) Close

func (self *CaptureWriter) Close() error

(io.Closer interface)

func (*CaptureWriter) GetWrappedWriter

func (self *CaptureWriter) GetWrappedWriter() io.Writer

(WrappingWriter interface)

func (*CaptureWriter) Write

func (self *CaptureWriter) Write(b []byte) (int, error)

(io.Writer interface)

func (*CaptureWriter) WriteByte

func (self *CaptureWriter) WriteByte(c byte) error

io.ByteWriter interface

func (*CaptureWriter) WriteString

func (self *CaptureWriter) WriteString(s string) (int, error)

io.StringWriter interface

type CapturedFunc

type CapturedFunc func(name string, value string)

type Context

type Context struct {
	Variables ard.StringMap
	Writer    io.Writer
}

func NewContext

func NewContext(writer io.Writer, variables ard.StringMap) *Context

Note: the expectation is that the writer is not asynchronous. See [WriteString].

func (*Context) Clone

func (self *Context) Clone() *Context

func (*Context) Embed

func (self *Context) Embed(present any, jsContext *commonjs.Context) error

func (*Context) EndCapture

func (self *Context) EndCapture() error

func (*Context) EndRender

func (self *Context) EndRender() error

func (*Context) Flush

func (self *Context) Flush() error

func (*Context) GetVariable

func (self *Context) GetVariable(keys ...any) any

func (*Context) StartCapture

func (self *Context) StartCapture(name string)

func (*Context) StartRender

func (self *Context) StartRender(renderer string, jsContext *commonjs.Context) error

func (*Context) Write

func (self *Context) Write(content any) error

type HandleSugarFunc

type HandleSugarFunc func(scriptletContext *ScriptletContext, prefix string, code string) (bool, error) // return true to allow trailing newlines

type RenderWriter

type RenderWriter struct {
	// contains filtered or unexported fields
}

func NewRenderWriter

func NewRenderWriter(originalWriter io.Writer, context *commonjs.Context, renderer string) (*RenderWriter, error)

func (*RenderWriter) Close

func (self *RenderWriter) Close() error

(io.Closer interface)

func (*RenderWriter) GetWrappedWriter

func (self *RenderWriter) GetWrappedWriter() io.Writer

(WrappingWriter interface)

func (*RenderWriter) Write

func (self *RenderWriter) Write(b []byte) (int, error)

(io.Writer interface)

func (*RenderWriter) WriteByte

func (self *RenderWriter) WriteByte(c byte) error

io.ByteWriter interface

func (*RenderWriter) WriteString

func (self *RenderWriter) WriteString(s string) (int, error)

io.StringWriter interface

type ScriptletAPI

type ScriptletAPI struct {
	// contains filtered or unexported fields
}

func NewScriptletAPI

func NewScriptletAPI(jsContext *commonjs.Context) *ScriptletAPI

func (*ScriptletAPI) Render

func (self *ScriptletAPI) Render(writer io.Writer, content any, renderer string, timeoutSeconds float64) error

func (*ScriptletAPI) RenderFrom

func (self *ScriptletAPI) RenderFrom(writer io.Writer, id string, renderer string, timeoutSeconds float64) error

func (*ScriptletAPI) RenderToString

func (self *ScriptletAPI) RenderToString(content any, renderer string) (string, error)

type ScriptletContext

type ScriptletContext struct {
	Writer io.Writer
	// contains filtered or unexported fields
}

func NewScriptletContext

func NewScriptletContext(writer io.Writer) *ScriptletContext

func (*ScriptletContext) AsContextWrite

func (self *ScriptletContext) AsContextWrite(literal string) error

func (*ScriptletContext) NextSuffix

func (self *ScriptletContext) NextSuffix() string

func (*ScriptletContext) WriteString

func (self *ScriptletContext) WriteString(content string) error

type WrappingWriter

type WrappingWriter interface {
	io.WriteCloser

	GetWrappedWriter() io.Writer
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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