State.go

package vm

// State κ΅¬μ‘°μ²΄λŠ” μΈν„°ν”„λ¦¬ν„°μ˜ μƒνƒœλ₯Ό λ‚˜νƒ€λ‚΄λŠ” μƒμˆ˜λ₯Ό ν¬ν•¨ν•©λ‹ˆλ‹€.
type State struct{}

// State μƒμˆ˜λŠ” μΈν„°ν”„λ¦¬ν„°μ˜ μƒνƒœλ₯Ό μ •μ˜ν•©λ‹ˆλ‹€.
const (
	NULL      = ""      // NULL μƒνƒœ
	READ      = "read"  // READ μƒνƒœ
	CONDITION = "condition"  // CONDITION μƒνƒœ
	EXECUTION = "execution"  // EXECUTION μƒνƒœ
	MAIN      = "main"  // MAIN ν”„λ‘œμ„ΈμŠ€
	POST      = "post"  // POST ν”„λ‘œμ„ΈμŠ€
)

μƒμˆ˜ μ„€λͺ…

  1. NULL: 초기 μƒνƒœ λ˜λŠ” μƒνƒœκ°€ μ—†λŠ” 경우λ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.

  2. READ: 인터프리터가 데이터λ₯Ό 읽고 μžˆλŠ” μƒνƒœλ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.

  3. CONDITION: 인터프리터가 쑰건을 ν‰κ°€ν•˜κ³  μžˆλŠ” μƒνƒœλ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.

  4. EXECUTION: 인터프리터가 λͺ…령을 μ‹€ν–‰ν•˜κ³  μžˆλŠ” μƒνƒœλ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.

  5. MAIN: 인터프리터가 메인 ν”„λ‘œμ„ΈμŠ€λ₯Ό μ²˜λ¦¬ν•˜κ³  μžˆλŠ” μƒνƒœλ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.

  6. POST: 인터프리터가 ν›„μ²˜λ¦¬(post-process)λ₯Ό μˆ˜ν–‰ν•˜κ³  μžˆλŠ” μƒνƒœλ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.

이 μƒμˆ˜λ“€μ€ μΈν„°ν”„λ¦¬ν„°μ˜ λ‹€μ–‘ν•œ μƒνƒœμ™€ ν”„λ‘œμ„ΈμŠ€λ₯Ό λͺ…ν™•ν•˜κ²Œ κ΅¬λΆ„ν•˜κ³  κ΄€λ¦¬ν•˜κΈ° μœ„ν•΄ μ‚¬μš©λ©λ‹ˆλ‹€.

Last updated