From 8f49b30671161bc5425c4f2f56cee96ad11befeb Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Wed, 14 Oct 2009 18:10:43 -0700 Subject: move austin/eval and austin/ogle to exp/eval and exp/ogle R=r OCL=35736 CL=35746 --- usr/austin/eval/compiler.go | 97 --------------------------------------------- 1 file changed, 97 deletions(-) delete mode 100644 usr/austin/eval/compiler.go (limited to 'usr/austin/eval/compiler.go') diff --git a/usr/austin/eval/compiler.go b/usr/austin/eval/compiler.go deleted file mode 100644 index f3c962c2b..000000000 --- a/usr/austin/eval/compiler.go +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright 2009 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -package eval - -import ( - "fmt"; - "go/scanner"; - "go/token"; -) - - -type positioned interface { - Pos() token.Position; -} - - -// A compiler captures information used throughout an entire -// compilation. Currently it includes only the error handler. -// -// TODO(austin) This might actually represent package level, in which -// case it should be package compiler. -type compiler struct { - errors scanner.ErrorHandler; - numErrors int; - silentErrors int; -} - -func (a *compiler) diagAt(pos positioned, format string, args ...) { - a.errors.Error(pos.Pos(), fmt.Sprintf(format, args)); - a.numErrors++; -} - -func (a *compiler) numError() int { - return a.numErrors + a.silentErrors; -} - -// The universal scope -func newUniverse() *Scope { - sc := &Scope{nil, 0}; - sc.block = &block{ - offset: 0, - scope: sc, - global: true, - defs: make(map[string] Def) - }; - return sc; -} -var universe *Scope = newUniverse(); - - -// TODO(austin) These can all go in stmt.go now -type label struct { - name string; - desc string; - // The PC goto statements should jump to, or nil if this label - // cannot be goto'd (such as an anonymous for loop label). - gotoPC *uint; - // The PC break statements should jump to, or nil if a break - // statement is invalid. - breakPC *uint; - // The PC continue statements should jump to, or nil if a - // continue statement is invalid. - continuePC *uint; - // The position where this label was resolved. If it has not - // been resolved yet, an invalid position. - resolved token.Position; - // The position where this label was first jumped to. - used token.Position; -} - -// A funcCompiler captures information used throughout the compilation -// of a single function body. -type funcCompiler struct { - *compiler; - fnType *FuncType; - // Whether the out variables are named. This affects what - // kinds of return statements are legal. - outVarsNamed bool; - *codeBuf; - flow *flowBuf; - labels map[string] *label; -} - -// A blockCompiler captures information used throughout the compilation -// of a single block within a function. -type blockCompiler struct { - *funcCompiler; - block *block; - // The label of this block, used for finding break and - // continue labels. - label *label; - // The blockCompiler for the block enclosing this one, or nil - // for a function-level block. - parent *blockCompiler; -} -- cgit v1.2.3