Skip to content

Commit

Permalink
Added support for x:y?z conditional expressions
Browse files Browse the repository at this point in the history
  • Loading branch information
WolfgangSt committed Oct 5, 2011
1 parent 5f66df7 commit 14b5bab
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 10 deletions.
5 changes: 0 additions & 5 deletions IIS.SLSharp/Translation/GLSL/GlslVisitor.Unimplemented.cs
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,6 @@ public override StringBuilder VisitBaseReferenceExpression(BaseReferenceExpressi
return null;
}

public override StringBuilder VisitConditionalExpression(ConditionalExpression conditionalExpression, int data)
{
throw new NotImplementedException();
}

public override StringBuilder VisitDefaultValueExpression(DefaultValueExpression defaultValueExpression, int data)
{
throw new NotImplementedException();
Expand Down
8 changes: 8 additions & 0 deletions IIS.SLSharp/Translation/GLSL/GlslVisitor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -559,5 +559,13 @@ public override StringBuilder VisitDirectionExpression(DirectionExpression direc
// this just passes through
return directionExpression.Expression.AcceptVisitor(this, data);
}

public override StringBuilder VisitConditionalExpression(ConditionalExpression conditionalExpression, int data)
{
var result = conditionalExpression.Condition.AcceptVisitor(this, data);
var trueCond = conditionalExpression.TrueExpression.AcceptVisitor(this, data);
var falseCond = conditionalExpression.FalseExpression.AcceptVisitor(this, data);
return result.Append(" ? ").Append(trueCond).Append(" : ").Append(falseCond);
}
}
}
5 changes: 0 additions & 5 deletions IIS.SLSharp/Translation/HLSL/HlslVisitor.Unimplemented.cs
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,6 @@ public override StringBuilder VisitBaseReferenceExpression(BaseReferenceExpressi
return null;
}

public override StringBuilder VisitConditionalExpression(ConditionalExpression conditionalExpression, int data)
{
throw new NotImplementedException();
}

public override StringBuilder VisitDefaultValueExpression(DefaultValueExpression defaultValueExpression, int data)
{
throw new NotImplementedException();
Expand Down
8 changes: 8 additions & 0 deletions IIS.SLSharp/Translation/HLSL/HlslVisitor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -610,5 +610,13 @@ public override StringBuilder VisitDirectionExpression(DirectionExpression direc
// this just passes through
return directionExpression.Expression.AcceptVisitor(this, data);
}

public override StringBuilder VisitConditionalExpression(ConditionalExpression conditionalExpression, int data)
{
var result = conditionalExpression.Condition.AcceptVisitor(this, data);
var trueCond = conditionalExpression.TrueExpression.AcceptVisitor(this, data);
var falseCond = conditionalExpression.FalseExpression.AcceptVisitor(this, data);
return result.Append(" ? ").Append(trueCond).Append(" : ").Append(falseCond);
}
}
}

0 comments on commit 14b5bab

Please sign in to comment.