Skip to main content

Module ast

Module ast 

Source
Expand description

AST (Abstract Syntax Tree) definitions for SevenMark

This module contains all AST element definitions organized into submodules:

  • span: Span and Parameter types
  • expression: Expression AST for conditionals
  • elements: Individual element structs
  • table: Table-related structures
  • list: List-related structures
  • traversable: Traversable trait and implementation

Structs§

AgeElement
나이 계산 [age(…)]
BlockQuoteElement
인용 블록 {{{#blockquote …}}}
CategoryElement
카테고리 {{{#category …}}}
CodeElement
코드 블록 {{{#code …}}}
CommentElement
주석 요소
ComparisonOperator
비교 연산자 (위치 정보 포함)
ConditionalListItems
조건부 리스트 아이템 ({{{#if condition :: [[item]]…}}})
ConditionalTableCells
조건부 테이블 셀 ({{{#if condition :: [[cell]]…}}})
ConditionalTableRows
조건부 테이블 행 ({{{#if condition :: [[row]]…}}})
DefineElement
변수 정의 {{{#define #varname=“value” …}}}
ErrorElement
에러 요소 (파싱 실패한 내용)
EscapeElement
이스케이프 요소
ExternalMediaElement
외부 미디어 [[#youtube …]], [[#vimeo …]], [[#nicovideo …]], [[#spotify …]]
FoldElement
폴드/접기 {{{#fold …}}}
FoldInnerElement
폴드 내부 요소
FootnoteElement
각주 {{{#footnote …}}}
FootnoteRefElement
각주 위치 fn
HLineElement
수평선 ––
HardBreakElement
하드 브레이크 [br]
HeaderElement
헤더 = Title =
IfElement
If 조건문 {{{#if condition :: content}}}
IncludeElement
포함 {{{#include …}}}
ListElement
리스트 요소 {{{#list …}}}
ListItemElement
리스트 아이템
LiteralElement
리터럴 {{{ content }}}
LogicalOperator
논리 연산자 (위치 정보 포함)
MediaElement
미디어 [[…]]
MentionElement
멘션 <@uuid> 또는 <#uuid>
NullElement
Null 매크로 [null]
Parameter
Individual parameter with span tracking
RedirectElement
리다이렉트 {{{#redirect …}}}
ResolvedDoc
문서/카테고리 resolve 결과 (title만 저장, URL은 렌더러에서 조립)
ResolvedFile
파일 resolve 결과 (DB에서 실제 URL을 가져옴)
ResolvedMediaInfo
MediaElement resolve 결과 file, document, category, url 각각 독립적으로 처리 href 우선순위: url > document > category > user
RubyElement
루비 텍스트 {{{#ruby …}}}
SoftBreakElement
소프트 브레이크 (줄바꿈)
Span
소스 코드 위치 정보 (바이트 오프셋)
StyledElement
스타일 적용 {{{#style=“…” content}}}
TableCellElement
테이블 셀
TableElement
테이블 요소 {{{#table …}}}
TableRowElement
테이블 행
TeXElement
TeX 수식 $ … $ 또는 $$ … $$
TextElement
텍스트 요소
TextStyleElement
텍스트 스타일 (Bold, Italic, Strikethrough, Underline, Superscript, Subscript 공유)
TimeNowElement
현재 시간 [now]
VariableElement
변수 참조 [var(…)]

Enums§

ComparisonOperatorKind
비교 연산자 종류
Element
메인 SevenMark AST Element enum
Expression
조건식 Expression AST
ListContentItem
리스트 콘텐츠 아이템 (아이템 또는 조건부)
LogicalOperatorKind
논리 연산자 종류
MentionType
멘션 타입
TableCellItem
테이블 셀 콘텐츠 아이템 (셀 또는 조건부)
TableRowItem
테이블 행 콘텐츠 아이템 (행 또는 조건부)

Traits§

Traversable
Trait for traversing AST elements

Type Aliases§

Parameters
파라미터 맵: key-value 쌍으로 각 value는 Parameter 구조체 (span 포함) BTreeMap을 사용하여 키 순서를 일관되게 유지