pub enum AstKind {
Statement(StatementKind),
Function(P<FunctionNode>),
Expression(ExprKind),
Block(P<BlockNode>),
ControlFlow(P<ControlFlowNode>),
}
Expand description
Represents an AST node.
Variants§
Statement(StatementKind)
Represents a statement node in the AST, such as variable = value;
.
Function(P<FunctionNode>)
Represents a function node in the AST.
Expression(ExprKind)
Represents an expression node in the AST.
Block(P<BlockNode>)
Represenst a block of code in the AST.
ControlFlow(P<ControlFlowNode>)
Represents a control flow node in the AST.
Trait Implementations§
Source§impl AstVisitable for AstKind
impl AstVisitable for AstKind
Source§impl<'de> Deserialize<'de> for AstKind
impl<'de> Deserialize<'de> for AstKind
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<ArrayAccessNode> for AstKind
impl From<ArrayAccessNode> for AstKind
Source§fn from(id: ArrayAccessNode) -> Self
fn from(id: ArrayAccessNode) -> Self
Converts to this type from the input type.
Source§impl From<AssignmentNode> for AstKind
impl From<AssignmentNode> for AstKind
Source§fn from(id: AssignmentNode) -> Self
fn from(id: AssignmentNode) -> Self
Converts to this type from the input type.
Source§impl From<BinaryOperationNode> for AstKind
impl From<BinaryOperationNode> for AstKind
Source§fn from(id: BinaryOperationNode) -> Self
fn from(id: BinaryOperationNode) -> Self
Converts to this type from the input type.
Source§impl From<ControlFlowNode> for AstKind
impl From<ControlFlowNode> for AstKind
Source§fn from(id: ControlFlowNode) -> Self
fn from(id: ControlFlowNode) -> Self
Converts to this type from the input type.
Source§impl From<FunctionCallNode> for AstKind
impl From<FunctionCallNode> for AstKind
Source§fn from(id: FunctionCallNode) -> Self
fn from(id: FunctionCallNode) -> Self
Converts to this type from the input type.
Source§impl From<FunctionNode> for AstKind
impl From<FunctionNode> for AstKind
Source§fn from(id: FunctionNode) -> Self
fn from(id: FunctionNode) -> Self
Converts to this type from the input type.
Source§impl From<IdentifierNode> for AstKind
impl From<IdentifierNode> for AstKind
Source§fn from(id: IdentifierNode) -> Self
fn from(id: IdentifierNode) -> Self
Converts to this type from the input type.
Source§impl From<LiteralNode> for AstKind
impl From<LiteralNode> for AstKind
Source§fn from(id: LiteralNode) -> Self
fn from(id: LiteralNode) -> Self
Converts to this type from the input type.
Source§impl From<MemberAccessNode> for AstKind
impl From<MemberAccessNode> for AstKind
Source§fn from(id: MemberAccessNode) -> Self
fn from(id: MemberAccessNode) -> Self
Converts to this type from the input type.
Source§impl From<NewArrayNode> for AstKind
impl From<NewArrayNode> for AstKind
Source§fn from(id: NewArrayNode) -> Self
fn from(id: NewArrayNode) -> Self
Converts to this type from the input type.
Source§impl From<P<ArrayAccessNode>> for AstKind
impl From<P<ArrayAccessNode>> for AstKind
Source§fn from(id: P<ArrayAccessNode>) -> Self
fn from(id: P<ArrayAccessNode>) -> Self
Converts to this type from the input type.
Source§impl From<P<AssignmentNode>> for AstKind
impl From<P<AssignmentNode>> for AstKind
Source§fn from(id: P<AssignmentNode>) -> Self
fn from(id: P<AssignmentNode>) -> Self
Converts to this type from the input type.
Source§impl From<P<BinaryOperationNode>> for AstKind
impl From<P<BinaryOperationNode>> for AstKind
Source§fn from(id: P<BinaryOperationNode>) -> Self
fn from(id: P<BinaryOperationNode>) -> Self
Converts to this type from the input type.
Source§impl From<P<ControlFlowNode>> for AstKind
impl From<P<ControlFlowNode>> for AstKind
Source§fn from(id: P<ControlFlowNode>) -> Self
fn from(id: P<ControlFlowNode>) -> Self
Converts to this type from the input type.
Source§impl From<P<FunctionCallNode>> for AstKind
impl From<P<FunctionCallNode>> for AstKind
Source§fn from(id: P<FunctionCallNode>) -> Self
fn from(id: P<FunctionCallNode>) -> Self
Converts to this type from the input type.
Source§impl From<P<FunctionNode>> for AstKind
impl From<P<FunctionNode>> for AstKind
Source§fn from(id: P<FunctionNode>) -> Self
fn from(id: P<FunctionNode>) -> Self
Converts to this type from the input type.
Source§impl From<P<IdentifierNode>> for AstKind
impl From<P<IdentifierNode>> for AstKind
Source§fn from(id: P<IdentifierNode>) -> Self
fn from(id: P<IdentifierNode>) -> Self
Converts to this type from the input type.
Source§impl From<P<MemberAccessNode>> for AstKind
impl From<P<MemberAccessNode>> for AstKind
Source§fn from(id: P<MemberAccessNode>) -> Self
fn from(id: P<MemberAccessNode>) -> Self
Converts to this type from the input type.
Source§impl From<P<NewArrayNode>> for AstKind
impl From<P<NewArrayNode>> for AstKind
Source§fn from(id: P<NewArrayNode>) -> Self
fn from(id: P<NewArrayNode>) -> Self
Converts to this type from the input type.
Source§impl From<P<PhiArrayNode>> for AstKind
impl From<P<PhiArrayNode>> for AstKind
Source§fn from(id: P<PhiArrayNode>) -> Self
fn from(id: P<PhiArrayNode>) -> Self
Converts to this type from the input type.
Source§impl From<P<ReturnNode>> for AstKind
impl From<P<ReturnNode>> for AstKind
Source§fn from(id: P<ReturnNode>) -> Self
fn from(id: P<ReturnNode>) -> Self
Converts to this type from the input type.
Source§impl From<P<UnaryOperationNode>> for AstKind
impl From<P<UnaryOperationNode>> for AstKind
Source§fn from(id: P<UnaryOperationNode>) -> Self
fn from(id: P<UnaryOperationNode>) -> Self
Converts to this type from the input type.
Source§impl From<P<VirtualBranchNode>> for AstKind
impl From<P<VirtualBranchNode>> for AstKind
Source§fn from(id: P<VirtualBranchNode>) -> Self
fn from(id: P<VirtualBranchNode>) -> Self
Converts to this type from the input type.
Source§impl From<PhiArrayNode> for AstKind
impl From<PhiArrayNode> for AstKind
Source§fn from(id: PhiArrayNode) -> Self
fn from(id: PhiArrayNode) -> Self
Converts to this type from the input type.
Source§impl From<ReturnNode> for AstKind
impl From<ReturnNode> for AstKind
Source§fn from(id: ReturnNode) -> Self
fn from(id: ReturnNode) -> Self
Converts to this type from the input type.
Source§impl From<StatementKind> for AstKind
impl From<StatementKind> for AstKind
Source§fn from(id: StatementKind) -> Self
fn from(id: StatementKind) -> Self
Converts to this type from the input type.
Source§impl From<UnaryOperationNode> for AstKind
impl From<UnaryOperationNode> for AstKind
Source§fn from(id: UnaryOperationNode) -> Self
fn from(id: UnaryOperationNode) -> Self
Converts to this type from the input type.
Source§impl From<VirtualBranchNode> for AstKind
impl From<VirtualBranchNode> for AstKind
Source§fn from(id: VirtualBranchNode) -> Self
fn from(id: VirtualBranchNode) -> Self
Converts to this type from the input type.
impl Eq for AstKind
impl StructuralPartialEq for AstKind
Auto Trait Implementations§
impl Freeze for AstKind
impl RefUnwindSafe for AstKind
impl Send for AstKind
impl Sync for AstKind
impl Unpin for AstKind
impl UnwindSafe for AstKind
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.