Package dev.cel.expr

Class Decl.FunctionDecl.Overload

java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessage
dev.cel.expr.Decl.FunctionDecl.Overload
All Implemented Interfaces:
com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Decl.FunctionDecl.OverloadOrBuilder, Serializable
Enclosing class:
Decl.FunctionDecl

public static final class Decl.FunctionDecl.Overload extends com.google.protobuf.GeneratedMessage implements Decl.FunctionDecl.OverloadOrBuilder
 An overload indicates a function's parameter types and return type, and
 may optionally include a function body described in terms of
 [Expr][cel.expr.Expr] values.

 Functions overloads are declared in either a function or method
 call-style. For methods, the `params[0]` is the expected type of the
 target receiver.

 Overloads must have non-overlapping argument types after erasure of all
 parameterized type variables (similar as type erasure in Java).
 
Protobuf type cel.expr.Decl.FunctionDecl.Overload
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • bitField0_

      private int bitField0_
    • OVERLOAD_ID_FIELD_NUMBER

      public static final int OVERLOAD_ID_FIELD_NUMBER
      See Also:
    • overloadId_

      private volatile Object overloadId_
    • PARAMS_FIELD_NUMBER

      public static final int PARAMS_FIELD_NUMBER
      See Also:
    • params_

      private List<Type> params_
    • TYPE_PARAMS_FIELD_NUMBER

      public static final int TYPE_PARAMS_FIELD_NUMBER
      See Also:
    • typeParams_

      private com.google.protobuf.LazyStringArrayList typeParams_
    • RESULT_TYPE_FIELD_NUMBER

      public static final int RESULT_TYPE_FIELD_NUMBER
      See Also:
    • resultType_

      private Type resultType_
    • IS_INSTANCE_FUNCTION_FIELD_NUMBER

      public static final int IS_INSTANCE_FUNCTION_FIELD_NUMBER
      See Also:
    • isInstanceFunction_

      private boolean isInstanceFunction_
    • DOC_FIELD_NUMBER

      public static final int DOC_FIELD_NUMBER
      See Also:
    • doc_

      private volatile Object doc_
    • memoizedIsInitialized

      private byte memoizedIsInitialized
    • DEFAULT_INSTANCE

      private static final Decl.FunctionDecl.Overload DEFAULT_INSTANCE
    • PARSER

      private static final com.google.protobuf.Parser<Decl.FunctionDecl.Overload> PARSER
  • Constructor Details

    • Overload

      private Overload(com.google.protobuf.GeneratedMessage.Builder<?> builder)
    • Overload

      private Overload()
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage
    • getOverloadId

      public String getOverloadId()
       Required. Globally unique overload name of the function which reflects
       the function name and argument types.
      
       This will be used by a [Reference][cel.expr.Reference] to
       indicate the `overload_id` that was resolved for the function `name`.
       
      string overload_id = 1;
      Specified by:
      getOverloadId in interface Decl.FunctionDecl.OverloadOrBuilder
      Returns:
      The overloadId.
    • getOverloadIdBytes

      public com.google.protobuf.ByteString getOverloadIdBytes()
       Required. Globally unique overload name of the function which reflects
       the function name and argument types.
      
       This will be used by a [Reference][cel.expr.Reference] to
       indicate the `overload_id` that was resolved for the function `name`.
       
      string overload_id = 1;
      Specified by:
      getOverloadIdBytes in interface Decl.FunctionDecl.OverloadOrBuilder
      Returns:
      The bytes for overloadId.
    • getParamsList

      public List<Type> getParamsList()
       List of function parameter [Type][cel.expr.Type] values.
      
       Param types are disjoint after generic type parameters have been
       replaced with the type `DYN`. Since the `DYN` type is compatible with
       any other type, this means that if `A` is a type parameter, the
       function types `int<A>` and `int<int>` are not disjoint. Likewise,
       `map<string, string>` is not disjoint from `map<K, V>`.
      
       When the `result_type` of a function is a generic type param, the
       type param name also appears as the `type` of on at least one params.
       
      repeated .cel.expr.Type params = 2;
      Specified by:
      getParamsList in interface Decl.FunctionDecl.OverloadOrBuilder
    • getParamsOrBuilderList

      public List<? extends TypeOrBuilder> getParamsOrBuilderList()
       List of function parameter [Type][cel.expr.Type] values.
      
       Param types are disjoint after generic type parameters have been
       replaced with the type `DYN`. Since the `DYN` type is compatible with
       any other type, this means that if `A` is a type parameter, the
       function types `int<A>` and `int<int>` are not disjoint. Likewise,
       `map<string, string>` is not disjoint from `map<K, V>`.
      
       When the `result_type` of a function is a generic type param, the
       type param name also appears as the `type` of on at least one params.
       
      repeated .cel.expr.Type params = 2;
      Specified by:
      getParamsOrBuilderList in interface Decl.FunctionDecl.OverloadOrBuilder
    • getParamsCount

      public int getParamsCount()
       List of function parameter [Type][cel.expr.Type] values.
      
       Param types are disjoint after generic type parameters have been
       replaced with the type `DYN`. Since the `DYN` type is compatible with
       any other type, this means that if `A` is a type parameter, the
       function types `int<A>` and `int<int>` are not disjoint. Likewise,
       `map<string, string>` is not disjoint from `map<K, V>`.
      
       When the `result_type` of a function is a generic type param, the
       type param name also appears as the `type` of on at least one params.
       
      repeated .cel.expr.Type params = 2;
      Specified by:
      getParamsCount in interface Decl.FunctionDecl.OverloadOrBuilder
    • getParams

      public Type getParams(int index)
       List of function parameter [Type][cel.expr.Type] values.
      
       Param types are disjoint after generic type parameters have been
       replaced with the type `DYN`. Since the `DYN` type is compatible with
       any other type, this means that if `A` is a type parameter, the
       function types `int<A>` and `int<int>` are not disjoint. Likewise,
       `map<string, string>` is not disjoint from `map<K, V>`.
      
       When the `result_type` of a function is a generic type param, the
       type param name also appears as the `type` of on at least one params.
       
      repeated .cel.expr.Type params = 2;
      Specified by:
      getParams in interface Decl.FunctionDecl.OverloadOrBuilder
    • getParamsOrBuilder

      public TypeOrBuilder getParamsOrBuilder(int index)
       List of function parameter [Type][cel.expr.Type] values.
      
       Param types are disjoint after generic type parameters have been
       replaced with the type `DYN`. Since the `DYN` type is compatible with
       any other type, this means that if `A` is a type parameter, the
       function types `int<A>` and `int<int>` are not disjoint. Likewise,
       `map<string, string>` is not disjoint from `map<K, V>`.
      
       When the `result_type` of a function is a generic type param, the
       type param name also appears as the `type` of on at least one params.
       
      repeated .cel.expr.Type params = 2;
      Specified by:
      getParamsOrBuilder in interface Decl.FunctionDecl.OverloadOrBuilder
    • getTypeParamsList

      public com.google.protobuf.ProtocolStringList getTypeParamsList()
       The type param names associated with the function declaration.
      
       For example, `function ex<K,V>(K key, map<K, V> map) : V` would yield
       the type params of `K, V`.
       
      repeated string type_params = 3;
      Specified by:
      getTypeParamsList in interface Decl.FunctionDecl.OverloadOrBuilder
      Returns:
      A list containing the typeParams.
    • getTypeParamsCount

      public int getTypeParamsCount()
       The type param names associated with the function declaration.
      
       For example, `function ex<K,V>(K key, map<K, V> map) : V` would yield
       the type params of `K, V`.
       
      repeated string type_params = 3;
      Specified by:
      getTypeParamsCount in interface Decl.FunctionDecl.OverloadOrBuilder
      Returns:
      The count of typeParams.
    • getTypeParams

      public String getTypeParams(int index)
       The type param names associated with the function declaration.
      
       For example, `function ex<K,V>(K key, map<K, V> map) : V` would yield
       the type params of `K, V`.
       
      repeated string type_params = 3;
      Specified by:
      getTypeParams in interface Decl.FunctionDecl.OverloadOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The typeParams at the given index.
    • getTypeParamsBytes

      public com.google.protobuf.ByteString getTypeParamsBytes(int index)
       The type param names associated with the function declaration.
      
       For example, `function ex<K,V>(K key, map<K, V> map) : V` would yield
       the type params of `K, V`.
       
      repeated string type_params = 3;
      Specified by:
      getTypeParamsBytes in interface Decl.FunctionDecl.OverloadOrBuilder
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the typeParams at the given index.
    • hasResultType

      public boolean hasResultType()
       Required. The result type of the function. For example, the operator
       `string.isEmpty()` would have `result_type` of `kind: BOOL`.
       
      .cel.expr.Type result_type = 4;
      Specified by:
      hasResultType in interface Decl.FunctionDecl.OverloadOrBuilder
      Returns:
      Whether the resultType field is set.
    • getResultType

      public Type getResultType()
       Required. The result type of the function. For example, the operator
       `string.isEmpty()` would have `result_type` of `kind: BOOL`.
       
      .cel.expr.Type result_type = 4;
      Specified by:
      getResultType in interface Decl.FunctionDecl.OverloadOrBuilder
      Returns:
      The resultType.
    • getResultTypeOrBuilder

      public TypeOrBuilder getResultTypeOrBuilder()
       Required. The result type of the function. For example, the operator
       `string.isEmpty()` would have `result_type` of `kind: BOOL`.
       
      .cel.expr.Type result_type = 4;
      Specified by:
      getResultTypeOrBuilder in interface Decl.FunctionDecl.OverloadOrBuilder
    • getIsInstanceFunction

      public boolean getIsInstanceFunction()
       Whether the function is to be used in a method call-style `x.f(...)`
       of a function call-style `f(x, ...)`.
      
       For methods, the first parameter declaration, `params[0]` is the
       expected type of the target receiver.
       
      bool is_instance_function = 5;
      Specified by:
      getIsInstanceFunction in interface Decl.FunctionDecl.OverloadOrBuilder
      Returns:
      The isInstanceFunction.
    • getDoc

      public String getDoc()
       Documentation string for the overload.
       
      string doc = 6;
      Specified by:
      getDoc in interface Decl.FunctionDecl.OverloadOrBuilder
      Returns:
      The doc.
    • getDocBytes

      public com.google.protobuf.ByteString getDocBytes()
       Documentation string for the overload.
       
      string doc = 6;
      Specified by:
      getDocBytes in interface Decl.FunctionDecl.OverloadOrBuilder
      Returns:
      The bytes for doc.
    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessage
    • writeTo

      public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException
      Specified by:
      writeTo in interface com.google.protobuf.MessageLite
      Overrides:
      writeTo in class com.google.protobuf.GeneratedMessage
      Throws:
      IOException
    • getSerializedSize

      public int getSerializedSize()
      Specified by:
      getSerializedSize in interface com.google.protobuf.MessageLite
      Overrides:
      getSerializedSize in class com.google.protobuf.GeneratedMessage
    • equals

      public boolean equals(Object obj)
      Specified by:
      equals in interface com.google.protobuf.Message
      Overrides:
      equals in class com.google.protobuf.AbstractMessage
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface com.google.protobuf.Message
      Overrides:
      hashCode in class com.google.protobuf.AbstractMessage
    • parseFrom

      public static Decl.FunctionDecl.Overload parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Decl.FunctionDecl.Overload parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Decl.FunctionDecl.Overload parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Decl.FunctionDecl.Overload parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Decl.FunctionDecl.Overload parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Decl.FunctionDecl.Overload parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Decl.FunctionDecl.Overload parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static Decl.FunctionDecl.Overload parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static Decl.FunctionDecl.Overload parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static Decl.FunctionDecl.Overload parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

      public static Decl.FunctionDecl.Overload parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static Decl.FunctionDecl.Overload parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • newBuilderForType

      public Decl.FunctionDecl.Overload.Builder newBuilderForType()
      Specified by:
      newBuilderForType in interface com.google.protobuf.Message
      Specified by:
      newBuilderForType in interface com.google.protobuf.MessageLite
    • newBuilder

      public static Decl.FunctionDecl.Overload.Builder newBuilder()
    • newBuilder

      public static Decl.FunctionDecl.Overload.Builder newBuilder(Decl.FunctionDecl.Overload prototype)
    • toBuilder

      Specified by:
      toBuilder in interface com.google.protobuf.Message
      Specified by:
      toBuilder in interface com.google.protobuf.MessageLite
    • newBuilderForType

      protected Decl.FunctionDecl.Overload.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)
      Overrides:
      newBuilderForType in class com.google.protobuf.AbstractMessage
    • getDefaultInstance

      public static Decl.FunctionDecl.Overload getDefaultInstance()
    • parser

      public static com.google.protobuf.Parser<Decl.FunctionDecl.Overload> parser()
    • getParserForType

      public com.google.protobuf.Parser<Decl.FunctionDecl.Overload> getParserForType()
      Specified by:
      getParserForType in interface com.google.protobuf.Message
      Specified by:
      getParserForType in interface com.google.protobuf.MessageLite
      Overrides:
      getParserForType in class com.google.protobuf.GeneratedMessage
    • getDefaultInstanceForType

      public Decl.FunctionDecl.Overload getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder