rottiakash / SSCD_Function_Parser

SS&CD Project

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SSCD_Function_Parser

SS&CD Project

Steps to run

Make sure LEX,YACC and python3 is installed

To install on Ubuntu using apt package manager:

sudo apt-get install bison flex

To run the program:

./run.sh

Example

Input file

#include <stdio.h>
int a = 10;
int b = 20;

int add(int, int);

void main()
{
    int sum = add(a, b);
    printf("The sum is %d", sum);
}

int add(int a, int b)
{
    return (a + b);
}

Execution

Execution Terminal

Output


Function Declaration Parsed
Function Name: add
Function Return Type: int
Number of Parameter:2
Parameter of type int
Parameter of type int

*****************


Function Defination Parsed
Function Name: main
Function Return Type: void
Number of Parameter:0

*****************


Function Defination Parsed
Function Name: add
Function Return Type: int
Number of Parameter:2
Parameter b of type int
Parameter a of type int

*****************

Starting static type checker
[
    {
        "type": "Declaration",
        "params": [
            "int",
            "int"
        ],
        "name": "add",
        "Return Type": "int"
    },
    {
        "type": "Defination",
        "params": [],
        "name": "main",
        "Return Type": "void"
    },
    {
        "type": "Defination",
        "params": [
            "int",
            "int"
        ],
        "name": "add",
        "Return Type": "int"
    }
]

*****************


No Type Errors found

*****************

About

SS&CD Project


Languages

Language:Python 58.5%Language:Yacc 33.0%Language:Lex 4.3%Language:Shell 2.9%Language:C 1.3%