Esempio n. 1
0
		protected override void TranslateVariable(List<string> output, Variable expr)
		{
			output.Add(this.GetVariableName(expr.Name));
		}
Esempio n. 2
0
		private void CompileVariable(Parser parser, ByteBuffer buffer, Variable variable, bool outputUsed)
		{
			if (!outputUsed) throw new ParserException(variable.FirstToken, "This expression does nothing.");
			int nameId = parser.GetId(variable.Name);
			Token token = variable.FirstToken;
			if (variable.LocalScopeId == -1)
			{
				throw new ParserException(token, "Variable used but not declared.");
			}
			else
			{
				buffer.Add(token, OpCode.LOCAL, variable.LocalScopeId, nameId);
			}
		}
Esempio n. 3
0
		protected abstract void TranslateVariable(List<string> output, Variable expr);