@Override public void setValue(String name, Object value) { ISymbol symbol = getSymbol( name ); verifySymbol( name, symbol ); // Any external symbols that are properties are coming from the code block, so they implicitly take // an IExternalSymbolMap as their first argument if (_assumeSymbolsRequireExternalSymbolMapArgument && symbol instanceof IDynamicPropertySymbol) { ((IDynamicPropertySymbol) symbol).getSetterDfs().invoke(new Object[]{this, value}); } else { symbol.setValue(value); } }
private IGosuProgram parseProgram( String expr ) throws ParseResultsException { IGosuProgramParser programParser = GosuParserFactory.createProgramParser(); ParserOptions parserOptions = new ParserOptions(); parserOptions.withTypeUsesMap( _interactiveTypeUsesMap ); IParseResult result = programParser.parseExpressionOrProgram( expr, _interactiveSymbolTable, parserOptions ); return result.getProgram(); }
@Override public Object getValue(String name) { ISymbol symbol = getSymbol( name ); verifySymbol( name, symbol ); // Any external symbols that are properties are coming from the code block, so they implicitly take // an IExternalSymbolMap as their first argument if (_assumeSymbolsRequireExternalSymbolMapArgument && symbol instanceof IDynamicPropertySymbol) { return ((IDynamicPropertySymbol) symbol).getGetterDfs().invoke(new Object[]{this}); } else { return symbol.getValue(); } }
public static IExpression compileExpression( String script, boolean bThrowOnWarning ) throws ParseResultsException { IGosuParser parser = GosuParserFactory.createParser(script, new StandardSymbolTable(true), ScriptabilityModifiers.SCRIPTABLE); parser.setThrowParseExceptionForWarnings( bThrowOnWarning ); return parser.parseExpOrProgram( null ); }
public void putSymbol( ISymbol symbol ) { String name = (String)symbol.getName(); //noinspection unchecked peekScope().put( name, symbol ); symbol.setDynamicSymbolTable( this ); }
public void putSymbol( ISymbol symbol ) { ISymbolTable targetSymTable = getTargetSymbolTable(); targetSymTable.putSymbol( symbol ); symbol.setDynamicSymbolTable( this ); }
public IParseTree getDeepestStatementLocationAtPos( int iPos, boolean bStrict ) { if( _parser == null ) { return null; } else { List<IParseTree> locations = _parser.getLocations(); return IParseTree.Search.getDeepestStatementLocation( locations, iPos - _parser.getOffsetShift(), bStrict ); } }
public Map getSymbols() { ISymbolTable targetSymTable = getTargetSymbolTable(); return targetSymTable.getSymbols(); }
public IScope pushScope() { ISymbolTable targetSymTable = getTargetSymbolTable(); return targetSymTable.pushScope(); }
public IScope popScope() { ISymbolTable targetSymTable = getTargetSymbolTable(); return targetSymTable.popScope(); }
private Object coerce( IType intrType, IType runtimeType, Object value ) { ICoercer coercer = findCoercer( intrType, runtimeType, true ); if( coercer != null ) { return coercer.coerceValue( intrType, value ); } return null; }
/** * For compile-time assignment of stack indexes. */ public int getNextStackIndexForScope( IScope scope ) { ensureIsolatedScopeSizesCapacity(); int csr = scope.getCSR(); return getNextStackIndexForScopeIndex( csr ); }
public int getPrivateGlobalScopeCount() { ISymbolTable targetSymTable = getTargetSymbolTable(); return targetSymTable.getPrivateGlobalScopeCount(); }
public int getTotalSymbolCount() { ISymbolTable targetSymTable = getTargetSymbolTable(); return targetSymTable.getTotalSymbolCount(); }
public void defineCommonSymbols() { ISymbolTable targetSymTable = getTargetSymbolTable(); targetSymTable.defineCommonSymbols(); }
private IGosuProgram parseProgram( String expr ) throws ParseResultsException { IGosuProgramParser programParser = GosuParserFactory.createProgramParser(); ParserOptions parserOptions = new ParserOptions(); parserOptions.withTypeUsesMap( _interactiveTypeUsesMap ); IParseResult result = programParser.parseExpressionOrProgram( expr, _interactiveSymbolTable, parserOptions ); return result.getProgram(); }
public void putSymbol( ISymbol symbol ) { String name = (String)symbol.getName(); //noinspection unchecked peekScope().put( name, symbol ); symbol.setDynamicSymbolTable( this ); }
public void putSymbol( ISymbol symbol ) { ISymbolTable targetSymTable = getTargetSymbolTable(); targetSymTable.putSymbol( symbol ); symbol.setDynamicSymbolTable( this ); }
@Override public Object getValue(String name) { ISymbol symbol = getSymbol( name ); verifySymbol( name, symbol ); // Any external symbols that are properties are coming from the code block, so they implicitly take // an IExternalSymbolMap as their first argument if (_assumeSymbolsRequireExternalSymbolMapArgument && symbol instanceof IDynamicPropertySymbol) { return ((IDynamicPropertySymbol) symbol).getGetterDfs().invoke(new Object[]{this}); } else { return symbol.getValue(); } }
@Override public void setValue(String name, Object value) { ISymbol symbol = getSymbol( name ); verifySymbol( name, symbol ); // Any external symbols that are properties are coming from the code block, so they implicitly take // an IExternalSymbolMap as their first argument if (_assumeSymbolsRequireExternalSymbolMapArgument && symbol instanceof IDynamicPropertySymbol) { ((IDynamicPropertySymbol) symbol).getSetterDfs().invoke(new Object[]{this, value}); } else { symbol.setValue(value); } }