[prev in list] [next in list] [prev in thread] [next in thread]
List: jedit-cvs
Subject: [ jEdit-commits ] SF.net SVN: jedit:[23790] plugins/AntlrSideKick/trunk/src/sidekick/antlr4
From: daleanson () users ! sourceforge ! net
Date: 2014-12-17 18:41:09
Message-ID: E1Y1JXB-0007ds-TR () sfs-ml-3 ! v29 ! ch3 ! sourceforge ! com
[Download RAW message or body]
Revision: 23790
http://sourceforge.net/p/jedit/svn/23790
Author: daleanson
Date: 2014-12-17 18:41:08 +0000 (Wed, 17 Dec 2014)
Log Message:
-----------
Add positions during parse.
Modified Paths:
--------------
plugins/AntlrSideKick/trunk/src/sidekick/antlr4/AntlrParser.java
plugins/AntlrSideKick/trunk/src/sidekick/antlr4/parser/AntlrSideKickListener.java
Modified: plugins/AntlrSideKick/trunk/src/sidekick/antlr4/AntlrParser.java
===================================================================
--- plugins/AntlrSideKick/trunk/src/sidekick/antlr4/AntlrParser.java 2014-12-17 \
18:22:26 UTC (rev 23789)
+++ plugins/AntlrSideKick/trunk/src/sidekick/antlr4/AntlrParser.java 2014-12-17 \
18:41:08 UTC (rev 23790) @@ -110,8 +110,6 @@
DefaultMutableTreeNode lexerTreeNode = new DefaultMutableTreeNode( \
"Lexer Rules" ); root.add( lexerTreeNode );
for ( AntlrNode rule : lexerRules ) {
- rule.setStart( ElementUtil.createStartPosition( buffer, rule ) \
);
- rule.setEnd( ElementUtil.createEndPosition( buffer, rule ) );
lexerTreeNode.add( new DefaultMutableTreeNode( rule ) );
}
}
@@ -119,8 +117,6 @@
DefaultMutableTreeNode parserTreeNode = new DefaultMutableTreeNode( \
"Parser Rules" ); root.add( parserTreeNode );
for ( AntlrNode rule : parserRules ) {
- rule.setStart( ElementUtil.createStartPosition( buffer, rule ) \
);
- rule.setEnd( ElementUtil.createEndPosition( buffer, rule ) );
parserTreeNode.add( new DefaultMutableTreeNode( rule ) );
}
}
Modified: plugins/AntlrSideKick/trunk/src/sidekick/antlr4/parser/AntlrSideKickListener.java
===================================================================
--- plugins/AntlrSideKick/trunk/src/sidekick/antlr4/parser/AntlrSideKickListener.java 2014-12-17 \
18:22:26 UTC (rev 23789)
+++ plugins/AntlrSideKick/trunk/src/sidekick/antlr4/parser/AntlrSideKickListener.java 2014-12-17 \
18:41:08 UTC (rev 23790) @@ -33,30 +33,34 @@
return parserRules;
}
- // field_public_obj.gif
- // NOTE: could use Positions, the Token has a getStartIndex and getEndIndex \
which are offsets from the start of the input stream @Override public void \
enterLexerRule(@NotNull ANTLRv4Parser.LexerRuleContext ctx) { AntlrNode node = new \
AntlrNode(); node.setName(ctx.TOKEN_REF().getText());
Location startLocation;
+ SideKickPosition startPosition;
TerminalNode fragment = ctx.FRAGMENT();
if (fragment != null) {
startLocation = new Location(ctx.FRAGMENT().getSymbol().getLine(), \
ctx.FRAGMENT().getSymbol().getCharPositionInLine()); + startPosition = new \
SideKickPosition(ctx.FRAGMENT().getSymbol().getStartIndex()); } else {
startLocation = new Location(ctx.TOKEN_REF().getSymbol().getLine(), \
ctx.TOKEN_REF().getSymbol().getCharPositionInLine()); + startPosition = \
new SideKickPosition(ctx.TOKEN_REF().getSymbol().getStartIndex()); }
node.setStartLocation(startLocation);
+ node.setStartPosition(startPosition);
node.setEndLocation(new Location(ctx.SEMI().getSymbol().getLine(), \
ctx.SEMI().getSymbol().getCharPositionInLine() + 1)); + \
node.setEndPosition(new SideKickPosition(ctx.SEMI().getSymbol().getStopIndex())); \
node.setIcon(lexerIcon); lexerRules.add(node);
}
- // elements_obj.gif
@Override public void enterParserRuleSpec(@NotNull \
ANTLRv4Parser.ParserRuleSpecContext ctx) { AntlrNode node = new AntlrNode();
node.setName(ctx.RULE_REF().getText());
node.setStartLocation(new Location(ctx.RULE_REF().getSymbol().getLine(), \
ctx.RULE_REF().getSymbol().getCharPositionInLine())); + \
node.setStartPosition(new \
SideKickPosition(ctx.RULE_REF().getSymbol().getStartIndex()));
node.setEndLocation(new Location(ctx.SEMI().getSymbol().getLine(), \
ctx.SEMI().getSymbol().getCharPositionInLine() + 1)); + \
node.setEndPosition(new SideKickPosition(ctx.SEMI().getSymbol().getStopIndex())); \
node.setIcon(parserIcon); parserRules.add(node);
}
This was sent by the SourceForge.net collaborative development platform, the world's \
largest Open Source development site.
------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=164703151&iu=/4140/ostg.clktrk
_______________________________________________
jEdit-CVS mailing list
jEdit-CVS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jedit-cvs
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic