C# 后处理和先决条件

C# 后处理和先决条件,c#,preconditions,bosque,C#,Preconditions,Bosque,我正在阅读Bosque编程语言的文档,遇到了一些错误和检查 我想知道C#是否有类似于post和前置条件的概念。 乍一看,我认为这看起来像是保护子句,但从语言的角度来看,一个人根本没有带着这些先决条件进入这个方法 由于文档相当新,我将发布我在这里讨论的源代码: 在C#中,我通常会这样写 internal class Foo { private int x; public int m(int y) { if(y<0) //Negative guar

我正在阅读Bosque编程语言的文档,遇到了一些错误和检查

我想知道C#是否有类似于post和前置条件的概念。 乍一看,我认为这看起来像是保护子句,但从语言的角度来看,一个人根本没有带着这些先决条件进入这个方法

由于文档相当新,我将发布我在这里讨论的源代码:

在C#中,我通常会这样写

internal class Foo 
{
    private int x;

    public int  m(int y)
    {
        if(y<0) //Negative guard clause
        {
            //throw an exception
        }
        //Assertions 
        int result = x * y;

        if(result<0)
        {
            //throw an exception
        }
        return result;
    }
}
内部类Foo
{
私人INTX;
公共整数m(整数y)
{

如果(Y)当涉及到前提条件时,Bosque的行为到底是什么?如果不输入方法?异常?您正在寻找的。
internal class Foo 
{
    private int x;

    public int  m(int y)
    {
        if(y<0) //Negative guard clause
        {
            //throw an exception
        }
        //Assertions 
        int result = x * y;

        if(result<0)
        {
            //throw an exception
        }
        return result;
    }
}