README

tonyfettes/starlark/ast does not have a README file

#
Argument

pub(all) enum Argument {
Positional(Expr)
Keyword(String, Expr)
Star(Expr)
DoubleStar(Expr)
} derive(Eq, Show, ToJson)

#
AssignOp

pub(all) enum AssignOp {
PlusEq
MinusEq
StarEq
SlashEq
FloorDivEq
PercentEq
AmpEq
PipeEq
CaretEq
LShiftEq
RShiftEq
} derive(Eq, Show, ToJson)

#
BinaryOp

pub(all) enum BinaryOp {
Add
Sub
Mul
Div
FloorDiv
Mod
BitAnd
BitOr
BitXor
LShift
RShift
Eq
NotEq
Lt
Gt
LtEq
GtEq
And
Or
In
NotIn
} derive(Eq, Show, ToJson)

#
CompClause

pub(all) enum CompClause {
For(Expr, Expr)
If(Expr)
} derive(Eq, Show, ToJson)

#
Expr

pub(all) enum Expr {
NoneLiteral(Span)
BoolLiteral(Bool, Span)
IntLiteral(Int64, Span)
StringLiteral(String, Span)
Identifier(String, Span)
UnaryOp(UnaryOp, Expr, Span)
BinaryOp(Expr, BinaryOp, Expr, Span)
IfExpr(Expr, Expr, Expr, Span)
Call(Expr, Array[Argument], Span)
Index(Expr, Expr, Span)
Slice(Expr, Expr?, Expr?, Expr?, Span)
Dot(Expr, String, Span)
ListExpr(Array[Expr], Span)
TupleExpr(Array[Expr], Span)
DictExpr(Array[(Expr, Expr)], Span)
ListComp(Expr, Array[CompClause], Span)
DictComp(Expr, Expr, Array[CompClause], Span)
} derive(Eq, Show, ToJson)

#
Parameter

pub(all) struct Parameter {
name : String
default : Expr?
} derive(Eq, Show, ToJson)

#
Position

pub(all) struct Position {
file : String
line : Int
column : Int
} derive(Eq, Show, ToJson)

#
Span

pub(all) struct Span {
start : Position
end : Position
} derive(Eq, Show, ToJson)

#
Stmt

pub(all) enum Stmt {
Def(String, Array[Parameter], Array[Stmt], Span)
If(Array[(Expr, Array[Stmt])], Array[Stmt]?, Span)
For(Expr, Expr, Array[Stmt], Span)
Return(Expr?, Span)
Assign(Expr, AssignOp?, Expr, Span)
Expr(Expr, Span)
Load(String, Array[(String, String)], Span)
Pass(Span)
Break(Span)
Continue(Span)
} derive(Eq, Show, ToJson)

#
UnaryOp

pub(all) enum UnaryOp {
Negate
Pos
BitNot
LogNot
} derive(Eq, Show, ToJson)

Powered by MoonBit

Site sourceReport issuePackagesBuild queueSkillsStatistics

© 2026 mooncakes.io