controlflow

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Aug 20, 2025 License: MIT Imports: 1 Imported by: 0

Documentation

Overview

Package controlflow provides functionality for controlling the flow of execution.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Control

type Control struct {
	Count int
	Type  FlowType
}

Control represents a control flow from a statement.

type EvaluationResult

type EvaluationResult struct {
	Value   datavalue.Value
	Control *Control
}

EvaluationResult represents a result from a statement.

func NewBreakResult

func NewBreakResult(count int) *EvaluationResult

NewBreakResult creates a new break result.

func NewContinueResult

func NewContinueResult(count int) *EvaluationResult

NewContinueResult creates a new continue result.

func NewRegularResult

func NewRegularResult(value datavalue.Value) *EvaluationResult

NewRegularResult creates a new regular result.

func (*EvaluationResult) IsBreakResult

func (r *EvaluationResult) IsBreakResult() bool

IsBreakResult returns true if this is a break result.

func (*EvaluationResult) IsContinueResult

func (r *EvaluationResult) IsContinueResult() bool

IsContinueResult returns true if this is a continue result.

func (*EvaluationResult) IsNormalResult

func (r *EvaluationResult) IsNormalResult() bool

IsNormalResult returns true if this is a normal result (no control flow).

type FlowType

type FlowType int

FlowType represents the type of a flow control statement.

const (
	// FlowTypeBreak represents a break statement.
	FlowTypeBreak FlowType = iota
	// FlowTypeContinue represents a continue statement.
	FlowTypeContinue
)

Jump to

Keyboard shortcuts

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