Exemple #1
0
        public Cdn.ExpressionTreeIter Canonicalize()
        {
            IntPtr raw_ret = cdn_expression_tree_iter_canonicalize(Handle);

            Cdn.ExpressionTreeIter ret = raw_ret == IntPtr.Zero ? null : (Cdn.ExpressionTreeIter)GLib.Opaque.GetOpaque(raw_ret, typeof(Cdn.ExpressionTreeIter), false);
            return(ret);
        }
Exemple #2
0
        public bool Equal(Cdn.ExpressionTreeIter other, bool asstring)
        {
            bool raw_ret = cdn_expression_tree_iter_equal(Handle, other == null ? IntPtr.Zero : other.Handle, asstring);
            bool ret     = raw_ret;

            return(ret);
        }
Exemple #3
0
        public Cdn.ExpressionTreeIter SubstituteHash(System.IntPtr table)
        {
            IntPtr raw_ret = cdn_expression_tree_iter_substitute_hash(Handle, table);

            Cdn.ExpressionTreeIter ret = raw_ret == IntPtr.Zero ? null : (Cdn.ExpressionTreeIter)GLib.Opaque.GetOpaque(raw_ret, typeof(Cdn.ExpressionTreeIter), false);
            return(ret);
        }
Exemple #4
0
        public Cdn.ExpressionTreeIter Copy()
        {
            IntPtr raw_ret = cdn_expression_tree_iter_copy(Handle);

            Cdn.ExpressionTreeIter ret = raw_ret == IntPtr.Zero ? null : (Cdn.ExpressionTreeIter)GLib.Opaque.GetOpaque(raw_ret, typeof(Cdn.ExpressionTreeIter), true);
            return(ret);
        }
Exemple #5
0
        public Cdn.ExpressionTreeIter Substitute(Cdn.Variable property, Cdn.ExpressionTreeIter subst)
        {
            IntPtr raw_ret = cdn_expression_tree_iter_substitute(Handle, property == null ? IntPtr.Zero : property.Handle, subst == null ? IntPtr.Zero : subst.Handle);

            Cdn.ExpressionTreeIter ret = raw_ret == IntPtr.Zero ? null : (Cdn.ExpressionTreeIter)GLib.Opaque.GetOpaque(raw_ret, typeof(Cdn.ExpressionTreeIter), false);
            return(ret);
        }
Exemple #6
0
        public Cdn.ExpressionTreeIter GetChild(int nth)
        {
            IntPtr raw_ret = cdn_expression_tree_iter_get_child(Handle, nth);

            Cdn.ExpressionTreeIter ret = raw_ret == IntPtr.Zero ? null : (Cdn.ExpressionTreeIter)GLib.Opaque.GetOpaque(raw_ret, typeof(Cdn.ExpressionTreeIter), false);
            return(ret);
        }
Exemple #7
0
        public unsafe Cdn.ExpressionTreeIter Derive(GLib.SList symbols, System.IntPtr towards, int order, Cdn.ExpressionTreeIterDeriveFlags flags)
        {
            IntPtr error   = IntPtr.Zero;
            IntPtr raw_ret = cdn_expression_tree_iter_derive(Handle, symbols == null ? IntPtr.Zero : symbols.Handle, towards, order, (int)flags, out error);

            Cdn.ExpressionTreeIter ret = raw_ret == IntPtr.Zero ? null : (Cdn.ExpressionTreeIter)GLib.Opaque.GetOpaque(raw_ret, typeof(Cdn.ExpressionTreeIter), false);
            if (error != IntPtr.Zero)
            {
                throw new GLib.GException(error);
            }
            return(ret);
        }
Exemple #8
0
        public unsafe Cdn.ExpressionTreeIter SolveFor(Cdn.Variable prop)
        {
            IntPtr error   = IntPtr.Zero;
            IntPtr raw_ret = cdn_expression_tree_iter_solve_for(Handle, prop == null ? IntPtr.Zero : prop.Handle, out error);

            Cdn.ExpressionTreeIter ret = raw_ret == IntPtr.Zero ? null : (Cdn.ExpressionTreeIter)GLib.Opaque.GetOpaque(raw_ret, typeof(Cdn.ExpressionTreeIter), false);
            if (error != IntPtr.Zero)
            {
                throw new GLib.GException(error);
            }
            return(ret);
        }
Exemple #9
0
        public string PeekRet()
        {
            if (d_ret.Count == 0)
            {
                var s = Node.State.Object as Cdn.Variable;

                if (s != null)
                {
                    var iter = new Cdn.ExpressionTreeIter(Node.State.Expression);
                    throw new RawC.Exception("Empty return value stack while processing: {0} => {1}, {2} (at {3}).\n\nThis is an internal rawc error which indicates a problem inside rawc (rather than your network). Please report this issue.",
                                             Node.State.ToString(),
                                             s.FullNameForDisplay,
                                             iter.ToStringDbg(),
                                             Node.ToString(false));
                }
                else
                {
                    throw new RawC.Exception("Empty return value stack while processing: {0}", Node.ToString(true));
                }
            }

            return(d_ret.Peek());
        }
Exemple #10
0
 public void SetChild(int nth, Cdn.ExpressionTreeIter child)
 {
     cdn_expression_tree_iter_set_child(Handle, nth, child == null ? IntPtr.Zero : child.Handle);
 }