Mercurial Hosting > luan
diff core/src/luan/impl/LuanParser.java @ 321:7f7708e8fdd4
remove import statement
git-svn-id: https://luan-java.googlecode.com/svn/trunk@322 21e917c8-12df-6dd8-5cb6-c86387c605b9
author | fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9> |
---|---|
date | Sun, 08 Feb 2015 07:26:20 +0000 |
parents | fed1893821bf |
children | b24a35612947 |
line wrap: on
line diff
--- a/core/src/luan/impl/LuanParser.java Fri Feb 06 21:54:41 2015 +0000 +++ b/core/src/luan/impl/LuanParser.java Sun Feb 08 07:26:20 2015 +0000 @@ -249,8 +249,6 @@ if( (stmt=ReturnStmt()) != null || (stmt=FunctionStmt()) != null || (stmt=LocalFunctionStmt()) != null - || (stmt=ImportStmt()) != null - || (stmt=JavaStmt()) != null || (stmt=BreakStmt()) != null || (stmt=ForStmt()) != null || (stmt=TryStmt()) != null @@ -348,53 +346,6 @@ return parser.success( new SetStmt( new SetLocalVar(symbolsSize()-1), fnDef ) ); } - private Stmt ImportStmt() throws ParseException { - int start = parser.begin(); - if( !Keyword("import",In.NOTHING) ) - return parser.failure(null); - String modName = StringLiteral(In.NOTHING); - if( modName==null ) - return parser.failure(null); - int i = modName.lastIndexOf('/'); - if( i == -1 ) - i = modName.lastIndexOf('.'); - if( i == -1 ) - i = modName.lastIndexOf(':'); - String varName = modName.substring(i+1); - if( !isValidName(varName) ) - throw parser.exception("invalid variable name '"+varName+"' in import"); - LuanSource.Element se = se(start); - FnCall require = new FnCall( se, new ConstExpr(se,PackageLuan.requireFn), new ConstExpr(se(start,modName),modName) ); - Settable settable; - if( interactive ) { - settable = nameVar(se,varName).settable(); - } else { - addSymbol( varName ); - settable = new SetLocalVar(symbolsSize()-1); - } - return parser.success( new SetStmt( settable, expr(require) ) ); - } - - private boolean isValidName(String s) { - if( s.length() == 0 ) - return false; - char c = s.charAt(0); - if( !('a'<=c && c<='z' || 'A'<=c && c<='Z' || c=='_') ) - return false; - for( int i=1; i<s.length() ; i++ ) { - if( !('a'<=c && c<='z' || 'A'<=c && c<='Z' || c=='_' || '0'<=c && c<='9') ) - return false; - } - return true; - } - - private Stmt JavaStmt() throws ParseException { - parser.begin(); - if( !Keyword("java",In.NOTHING) ) - return parser.failure(null); - return parser.success( new JavaStmt() ); - } - private Stmt BreakStmt() throws ParseException { parser.begin(); if( !Keyword("break",In.NOTHING) ) @@ -1154,9 +1105,7 @@ "function", "goto", "if", - "import", "in", - "java", "local", "nil", "not",