| 1234567891011121314151617181920212223242526272829303132 | 
							- import { Types } from './../../typeSystem/types';
 
- export class Function {
 
-   constructor(name, returnType, formalParameters, commandBlock) {
 
-     this.name = name;
 
-     this.returnType = returnType;
 
-     this.formalParameters = formalParameters;
 
-     this.commandBlock = commandBlock;
 
-     this._sourceInfo = null;
 
-   }
 
-   get isMain () {
 
-     return this.name === null && this.returnType.isCompatible(Types.VOID);
 
-   }
 
-   get commands () {
 
-     return this.commandBlock.commands;
 
-   }
 
-   get variablesDeclarations () {
 
-     return this.commandBlock.variables;
 
-   }
 
-   set sourceInfo (sourceInfo) {
 
- 		this._sourceInfo = sourceInfo;
 
- 	}
 
- 	get sourceInfo () {
 
- 		return this._sourceInfo;
 
- 	}
 
- }
 
 
  |