Featured post

c# - Usage of Server Side Controls in MVC Frame work -

i using asp.net 4.0 , mvc 2.0 web application. project requiremrnt have use server side control in application not possibl in noraml case. ideally want use adrotator control , datalist control. i saw few samples , references in codepleax mvc controllib howwver found less useful. can tell how utilize theese controls in asp.net application along mvc. note: please provide functionalities related adrotator , datalist controls not equivalent functionalities thanks in advace. mvc pages not use normal .net solution makes use of normal .net components impossible. a normal .net page use event driven solution call different methods service side mvc use actions , view completly different way handle things. also, mvc not use viewstate normal .net controlls require. found article discussing mixing of normal .net , mvc.

antlr3 - ANTLR Tree Grammar and StringTemplate Code Translation -


i working on code translation project sample antlr tree grammar as:

start:               ^(program declaration+) -> program_decl_tmpl(); declaration:         class_decl | interface_decl; class_decl:          ^(class ^(id class_identifier))                         -> class_decl_tmpl(cid={$class_identifier.text}); 

the group template file looks like:

group my;  program_decl_tmpl() ::= << *what?* >>  class_decl_tmpl(cid) ::= << public class <cid> {} >> 

based on this, have these questions:

  • everything works fine apart should express in what? program list of class declarations final generated output?
  • is approach averagely suitable not high-level language?
  • i have studied antlr code translation string templates, seems approach takes advantage of interleaving code in tree grammar. possible as possible just in string templates?

solution, add solution based on terence proposed:

start:             ^(program d+=declaration+) -> program_decl_tmpl(decls={$d}); declaration:       cd = class_decl -> decl_tmpl(decl={$cd.st})                  | id = interface_decl -> decl_tmpl(decl={$id.st}); class_decl:        ^(class ^(id class_identifier))                        -> class_decl_tmpl(cid={$class_identifier.text}); 

and templates be:

group my;  program_decl_tmpl(decls) ::= << <decls> >>  decl_tmpl(decl) ::= << <decl> >>  class_decl_tmpl(cid) ::= << public class <cid> {} >> 

try

start: ^(program d+=declaration+) -> program_decl_tmpl(decls=$d)  what? = <decls> 

Comments

Popular posts from this blog

c# - Usage of Server Side Controls in MVC Frame work -

cocoa - Nesting arrays into NSDictionary object (Objective-C) -

ios - Very simple iPhone App crashes on UILabel settext -