public static bool IsVoid(ITypeSpecifierNode specifier) { if (specifier is TypeSpecifierNode parsedSpecifier) { return(IsVoid(parsedSpecifier.Type)); } return(false); }
public static IType?GetTypeFromSpecifier(ITypeSpecifierNode specifierNode) { if (specifierNode is TypeSpecifierNode parsedSpecifier) { return(parsedSpecifier.Type); } return(null); }
public FunctionDefinitionNode( string name, ITypeSpecifierNode returnType, IEnumerable <DeclarationNode> parameters, BodyNode body, bool isExported, bool isDrop) { Name = name; ReturnType = returnType; Parameters = parameters.ToArray(); Body = body; IsExported = isExported; IsDrop = isDrop; }
private bool IsBorrowPointer(ITypeSpecifierNode node) { if (!(node is TypeSpecifierNode typeSpecifier)) { return(false); } if (!(typeSpecifier.Type is IPointerType pointerType)) { return(false); } if (pointerType.Mode != PointerMode.Borrowed) { return(false); } return(true); }
public CastUnaryOpNode(ITypeSpecifierNode toType, IExpressionNode rhs) : base(rhs) { ToType = toType; }
public DeclarationNode(ITypeSpecifierNode type, string name, IExpressionNode assignment) { Type = type; Name = name; Assignment = assignment; }