Nimble Prime Musketeers

    cssauron-falafel

    1.2.1 • Public • Published

    cssauron-falafel

    cssauron bindings for falafel / esprima JS ASTs.

    It shortens the esprima names they're a bit verbose.

    It also supports .relation classes -- for example:

    if(x) {
    
    }
    
    if(x > y) {
    
    }
    
    if(100) {
    
    }
    

    If we wanted to select all of the if tests ("x", "x > y", "100"), we could use the following selectors:

    if > *:first-child                  // lil verbose!
    .test                               // test the relation from the parent, not the node type
    if > .test                          // more specific -- only ".test" relations from "if" statements.
    

    node types

    LabeledStatement	    ->	label
    BlockStatement	        ->	block
    Program	                ->	root
    ExpressionStatement	    ->	expr
    ConditionalExpression	->	ternary
    IfStatement	        	->	if
    BreakStatement	    	->	break
    ContinueStatement		->	continue
    WithStatement	    	->	with
    SwitchStatement	    	->	switch
    ReturnStatement	    	->	return
    ThrowStatement	    	->	throw
    TryStatement	    	->	try
    WhileStatement	    	->	while
    DoWhileStatement		->	do-while
    ForStatement	    	->	for
    ForInStatement	    	->	for-in
    FunctionDeclaration		->	function
    VariableDeclaration		->	variable-decl
    VariableDeclarator		->	variable
    LogicalExpression		->	binary
    BinaryExpression		->	binary
    AssignmentExpression	->	assign
    ArrayExpression	    	->	array
    ObjectExpression		->	object
    ObjectKeyExpression		->	key
    FunctionExpression		->	function
    SequenceExpression		->	sequence
    UpdateExpression		->	update
    UnaryExpression	    	->	unary
    CallExpression	    	->	call
    NewExpression	    	->	new
    MemberExpression		->	lookup
    SwitchClause	    	->	case
    CatchClause	        	->	catch
    DebuggerStatement		->	debugger
    ThisExpression	    	->	this
    Identifier	        	->	id
    Literal	            	->	literal
    

    license

    MIT

    Keywords

    none

    Install

    npm i cssauron-falafel

    DownloadsWeekly Downloads

    5,154

    Version

    1.2.1

    License

    MIT

    Last publish

    Collaborators

    • chrisdickinson