private static bool IsStatementExpression(SpliceExpression node) { if (node.ParentNode == null) { return(false); } return(node.ParentNode.NodeType == NodeType.ExpressionStatement); }
public override void OnSpliceExpression(SpliceExpression node) { if (IsStatementExpression(node)) { Push(LiftStatement(node.Expression)); return; } Push(LiftExpression(node.Expression)); }
public override void OnSpliceExpression(SpliceExpression node) { if (InsideSerializedQuasiquote()) { SerializeSpliceExpression(node); return; } if (IsStatementExpression(node)) { Push(LiftStatement(node.Expression)); return; } Push(LiftExpression(node.Expression)); }
override public object Clone() { SpliceExpression clone = (SpliceExpression)FormatterServices.GetUninitializedObject(typeof(SpliceExpression)); clone._lexicalInfo = _lexicalInfo; clone._endSourceLocation = _endSourceLocation; clone._documentation = _documentation; clone._entity = _entity; if (_annotations != null) { clone._annotations = (Hashtable)_annotations.Clone(); } clone._expressionType = _expressionType; if (null != _expression) { clone._expression = _expression.Clone() as Expression; clone._expression.InitializeParent(clone); } return(clone); }
override public object Clone() { SpliceExpression clone = new SpliceExpression(); clone._lexicalInfo = _lexicalInfo; clone._endSourceLocation = _endSourceLocation; clone._documentation = _documentation; clone._isSynthetic = _isSynthetic; clone._entity = _entity; if (_annotations != null) { clone._annotations = (Hashtable)_annotations.Clone(); } clone._expressionType = _expressionType; if (null != _expression) { clone._expression = _expression.Clone() as Expression; clone._expression.InitializeParent(clone); } return(clone); }
protected Expression splice_expression() //throws RecognitionException, TokenStreamException { Expression e; IToken begin = null; e = null; try { // for error handling begin = LT(1); match(SPLICE_BEGIN); e=atom(); if (0==inputState.guessing) { e = new SpliceExpression(ToLexicalInfo(begin), e); } } catch (RecognitionException ex) { if (0 == inputState.guessing) { reportError(ex, "splice_expression"); recover(ex,tokenSet_44_); } else { throw ex; } } return e; }
override public object Clone() { SpliceExpression clone = new SpliceExpression(); clone._lexicalInfo = _lexicalInfo; clone._endSourceLocation = _endSourceLocation; clone._documentation = _documentation; clone._isSynthetic = _isSynthetic; clone._entity = _entity; if (_annotations != null) clone._annotations = (Hashtable)_annotations.Clone(); clone._expressionType = _expressionType; if (null != _expression) { clone._expression = _expression.Clone() as Expression; clone._expression.InitializeParent(clone); } return clone; }
public override void OnSpliceExpression(SpliceExpression e) { WriteOperator("$("); Visit(e.Expression); WriteOperator(")"); }