public IEnumerable <SymbolInfo> AllDefinedObjects()
        {
            var mine = Objects.Values;

            if (Parent == null)
            {
                return(mine);
            }
            return(Parent.AllDefinedObjects().Concat(Objects.Values));
        }
Esempio n. 2
0
 public void AssignParametersAndLocals()
 {
     Locals     = SymbolTable.GetInSubScopes().Where(x => x.Kind == ObjectKind.Local).Select((x, i) => { x.Offset = 4 * (i + 1); return(x); }).ToList();
     Parameters = SymbolTable.AllDefinedObjects().Where(x => x.Kind == ObjectKind.Parameter).Select((x, i) => { x.Offset = 4 * (i + 1); return(x); }).ToList();
 }
 public void SetAttributes()
 {
     this.Atributes = SymbolTable.AllDefinedObjects().Where(x => x.Kind == ObjectKind.Atribute).Select((x, i) => { x.Offset = 4 * i; return(x); }).ToList();
 }