Encapsulates information about the original source file from which a
FileDescriptorProto was generated.

Generated from protobuf message google.protobuf.SourceCodeInfo

CloneableInstantiable
ExtendsGoogle\Protobuf\Internal\Message
Methods
public __construct( $data = NULL)
 

Constructor.

    public Google\Protobuf\Internal\Message::byteSize()
     
    • ignore
    public Google\Protobuf\Internal\Message::clear()
     

    Clear all containing fields.

    • return
    public Google\Protobuf\Internal\Message::discardUnknownFields()
     

    Clear all unknown fields previously parsed.

    • return
    public getLocation()
     

    A Location identifies a piece of source code in a .proto file which
    corresponds to a particular definition. This information is intended
    to be useful to IDEs, code indexers, documentation generators, and similar
    tools.

    For example, say we have a file like:
    message Foo {

    optional string foo = 1;
    

    }
    Let's look at just the field definition:
    optional string foo = 1;
    ^ ^^ ^^ ^ ^^^
    a bc de f ghi
    We have the following locations:
    span path represents
    [a,i) [ 4, 0, 2, 0 ] The whole field definition.
    [a,b) [ 4, 0, 2, 0, 4 ] The label (optional).
    [c,d) [ 4, 0, 2, 0, 5 ] The type (string).
    [e,f) [ 4, 0, 2, 0, 1 ] The name (foo).
    [g,h) [ 4, 0, 2, 0, 3 ] The number (1).
    Notes:

    • A location may refer to a repeated field itself (i.e. not to any
      particular index within it). This is used whenever a set of elements are
      logically enclosed in a single code segment. For example, an entire
      extend block (possibly containing multiple extension definitions) will
      have an outer location whose path refers to the "extensions" repeated
      field without an index.
    • Multiple locations may have the same path. This happens when a single
      logical declaration is spread out across multiple places. The most
      obvious example is the "extend" block again -- there may be multiple
      extend blocks in the same scope, each of which will have the same path.
    • A location's span is not always a subset of its parent's span. For
      example, the "extendee" of an extension declaration appears at the
      beginning of the "extend" block and is shared by all extensions within
      the block.
    • Just because a location's span is a subset of some other location's span
      does not mean that it is a descendant. For example, a "group" defines
      both a type and a field in a single declaration. Thus, the locations
      corresponding to the type and field and their components will overlap.
    • Code which tries to interpret locations should probably be designed to
      ignore those that it doesn't understand, as more types of locations could
      be recorded in the future.

    Generated from protobuf field repeated .google.protobuf.SourceCodeInfo.Location location = 1;

    public hasLocation()
    public Google\Protobuf\Internal\Message::jsonByteSize()
     
    • ignore
    public Google\Protobuf\Internal\Message::mergeFrom( $msg)
     

    Merges the contents of the specified message into current message.

    This method merges the contents of the specified message into the
    current message. Singular fields that are set in the specified message
    overwrite the corresponding fields in the current message. Repeated
    fields are appended. Map fields key-value pairs are overwritten.
    Singular/Oneof sub-messages are recursively merged. All overwritten
    sub-messages are deep-copied.

    • return
    public Google\Protobuf\Internal\Message::mergeFromJsonString( $data, $ignore_unknown = false)
     

    Parses a json string to protobuf message.

    This function takes a string in the json wire format, matching the
    encoding output by serializeToJsonString().
    See mergeFrom() for merging behavior, if the field is already set in the
    specified message.

    • return
    • throws Exception Invalid data.
    public Google\Protobuf\Internal\Message::mergeFromString( $data)
     

    Parses a protocol buffer contained in a string.

    This function takes a string in the (non-human-readable) binary wire
    format, matching the encoding output by serializeToString().
    See mergeFrom() for merging behavior, if the field is already set in the
    specified message.

    • return
    • throws Exception Invalid data.
    public Google\Protobuf\Internal\Message::parseFromJsonStream( $input, $ignore_unknown)
     
    • ignore
    public Google\Protobuf\Internal\Message::parseFromStream( $input)
     
    • ignore
    public Google\Protobuf\Internal\Message::serializeToJsonStream( $output)
     
    • ignore
    public Google\Protobuf\Internal\Message::serializeToJsonString()
     

    Serialize the message to json string.

    • return string Serialized json protobuf data.
    public Google\Protobuf\Internal\Message::serializeToStream( $output)
     
    • ignore
    public Google\Protobuf\Internal\Message::serializeToString()
     

    Serialize the message to string.

    • return string Serialized binary protobuf data.
    public setLocation( $var)
     

    A Location identifies a piece of source code in a .proto file which
    corresponds to a particular definition. This information is intended
    to be useful to IDEs, code indexers, documentation generators, and similar
    tools.

    For example, say we have a file like:
    message Foo {

    optional string foo = 1;
    

    }
    Let's look at just the field definition:
    optional string foo = 1;
    ^ ^^ ^^ ^ ^^^
    a bc de f ghi
    We have the following locations:
    span path represents
    [a,i) [ 4, 0, 2, 0 ] The whole field definition.
    [a,b) [ 4, 0, 2, 0, 4 ] The label (optional).
    [c,d) [ 4, 0, 2, 0, 5 ] The type (string).
    [e,f) [ 4, 0, 2, 0, 1 ] The name (foo).
    [g,h) [ 4, 0, 2, 0, 3 ] The number (1).
    Notes:

    • A location may refer to a repeated field itself (i.e. not to any
      particular index within it). This is used whenever a set of elements are
      logically enclosed in a single code segment. For example, an entire
      extend block (possibly containing multiple extension definitions) will
      have an outer location whose path refers to the "extensions" repeated
      field without an index.
    • Multiple locations may have the same path. This happens when a single
      logical declaration is spread out across multiple places. The most
      obvious example is the "extend" block again -- there may be multiple
      extend blocks in the same scope, each of which will have the same path.
    • A location's span is not always a subset of its parent's span. For
      example, the "extendee" of an extension declaration appears at the
      beginning of the "extend" block and is shared by all extensions within
      the block.
    • Just because a location's span is a subset of some other location's span
      does not mean that it is a descendant. For example, a "group" defines
      both a type and a field in a single declaration. Thus, the locations
      corresponding to the type and field and their components will overlap.
    • Code which tries to interpret locations should probably be designed to
      ignore those that it doesn't understand, as more types of locations could
      be recorded in the future.

    Generated from protobuf field repeated .google.protobuf.SourceCodeInfo.Location location = 1;

    • return $this
    Methods
    protected Google\Protobuf\Internal\Message::mergeFromArray(array $array)
     

    Populates the message from a user-supplied PHP array. Array keys
    correspond to Message properties and nested message properties.

    Example:

    $message->mergeFromArray([
        'name' => 'This is a message name',
        'interval' => [
             'startTime' => time() - 60,
             'endTime' => time(),
        ]
    ]);
    

    This method will trigger an error if it is passed data that cannot
    be converted to the correct type. For example, a StringValue field
    must receive data that is either a string or a StringValue object.

    • return
    protected Google\Protobuf\Internal\Message::mergeFromJsonArray( $array, $ignore_unknown)
    protected Google\Protobuf\Internal\Message::readOneof( $number)
    protected Google\Protobuf\Internal\Message::readWrapperValue( $member)
    protected Google\Protobuf\Internal\Message::whichOneof( $oneof_name)
    protected Google\Protobuf\Internal\Message::writeOneof( $number, $value)
    protected Google\Protobuf\Internal\Message::writeWrapperValue( $member, $value)
    Properties
    private $has_location
    private $location
     

    A Location identifies a piece of source code in a .proto file which
    corresponds to a particular definition. This information is intended
    to be useful to IDEs, code indexers, documentation generators, and similar
    tools.

    For example, say we have a file like:
    message Foo {

    optional string foo = 1;
    

    }
    Let's look at just the field definition:
    optional string foo = 1;
    ^ ^^ ^^ ^ ^^^
    a bc de f ghi
    We have the following locations:
    span path represents
    [a,i) [ 4, 0, 2, 0 ] The whole field definition.
    [a,b) [ 4, 0, 2, 0, 4 ] The label (optional).
    [c,d) [ 4, 0, 2, 0, 5 ] The type (string).
    [e,f) [ 4, 0, 2, 0, 1 ] The name (foo).
    [g,h) [ 4, 0, 2, 0, 3 ] The number (1).
    Notes:

    • A location may refer to a repeated field itself (i.e. not to any
      particular index within it). This is used whenever a set of elements are
      logically enclosed in a single code segment. For example, an entire
      extend block (possibly containing multiple extension definitions) will
      have an outer location whose path refers to the "extensions" repeated
      field without an index.
    • Multiple locations may have the same path. This happens when a single
      logical declaration is spread out across multiple places. The most
      obvious example is the "extend" block again -- there may be multiple
      extend blocks in the same scope, each of which will have the same path.
    • A location's span is not always a subset of its parent's span. For
      example, the "extendee" of an extension declaration appears at the
      beginning of the "extend" block and is shared by all extensions within
      the block.
    • Just because a location's span is a subset of some other location's span
      does not mean that it is a descendant. For example, a "group" defines
      both a type and a field in a single declaration. Thus, the locations
      corresponding to the type and field and their components will overlap.
    • Code which tries to interpret locations should probably be designed to
      ignore those that it doesn't understand, as more types of locations could
      be recorded in the future.

    Generated from protobuf field repeated .google.protobuf.SourceCodeInfo.Location location = 1;

    Methods
    private Google\Protobuf\Internal\Message::appendHelper( $field, $append_value)
    private Google\Protobuf\Internal\Message::convertJsonValueToProtoValue( $value, $field, $ignore_unknown, $is_map_key = false)
    private Google\Protobuf\Internal\Message::defaultValue( $field)
     
    • ignore
    private Google\Protobuf\Internal\Message::existField( $field)
     
    • ignore
    private Google\Protobuf\Internal\Message::fieldByteSize( $field)
     
    • ignore
    private Google\Protobuf\Internal\Message::fieldDataOnlyByteSize( $field, $value)
     
    • ignore
    private Google\Protobuf\Internal\Message::fieldDataOnlyJsonByteSize( $field, $value)
     
    • ignore
    private Google\Protobuf\Internal\Message::fieldJsonByteSize( $field)
     
    • ignore
    private Google\Protobuf\Internal\Message::initWithDescriptor(Google\Protobuf\Internal\Descriptor $desc)
     
    • ignore
    private Google\Protobuf\Internal\Message::initWithGeneratedPool()
     
    • ignore
    private Google\Protobuf\Internal\Message::kvUpdateHelper( $field, $update_key, $update_value)
    private Google\Protobuf\Internal\Message::mergeFromArrayJsonImpl( $array, $ignore_unknown)
    private static Google\Protobuf\Internal\Message::normalizeArrayElementsToMessageType( $value, $class)
     

    Tries to normalize the elements in $value into a provided protobuf
    wrapper type $class. If $value is any type other than array, we do
    not do any conversion, and instead rely on the existing protobuf
    type checking. If $value is an array, we process each element and
    try to convert it to an instance of $class.

      private static Google\Protobuf\Internal\Message::normalizeToMessageType( $value, $class)
       

      Tries to normalize $value into a provided protobuf wrapper type $class.

      If $value is any type other than an object, we attempt to construct an
      instance of $class and assign $value to it using the setValue method
      shared by all wrapper types.

      This method will raise an error if it receives a type that cannot be
      assigned to the wrapper type via setValue.

        private Google\Protobuf\Internal\Message::parseFieldFromStream( $tag, $input, $field)
         
        • ignore
        private static Google\Protobuf\Internal\Message::parseFieldFromStreamNoTag( $input, $field, $value)
         
        • ignore
        private Google\Protobuf\Internal\Message::repeatedFieldDataOnlyByteSize( $field)
         
        • ignore
        private Google\Protobuf\Internal\Message::serializeFieldToJsonStream( $output, $field)
         
        • ignore
        private Google\Protobuf\Internal\Message::serializeFieldToStream( $output, $field)
         
        • ignore
        private Google\Protobuf\Internal\Message::serializeMapFieldToStream( $field, $output)
         
        • ignore
        private Google\Protobuf\Internal\Message::serializeRepeatedFieldToStream( $field, $output)
         
        • ignore
        private Google\Protobuf\Internal\Message::serializeSingularFieldToStream( $field, $output)
         
        • ignore
        private Google\Protobuf\Internal\Message::skipField( $input, $tag)
         
        • ignore
        Methods
        private static Google\Protobuf\Internal\Message::normalizeArrayElementsToMessageType( $value, $class)
         

        Tries to normalize the elements in $value into a provided protobuf
        wrapper type $class. If $value is any type other than array, we do
        not do any conversion, and instead rely on the existing protobuf
        type checking. If $value is an array, we process each element and
        try to convert it to an instance of $class.

          private static Google\Protobuf\Internal\Message::normalizeToMessageType( $value, $class)
           

          Tries to normalize $value into a provided protobuf wrapper type $class.

          If $value is any type other than an object, we attempt to construct an
          instance of $class and assign $value to it using the setValue method
          shared by all wrapper types.

          This method will raise an error if it receives a type that cannot be
          assigned to the wrapper type via setValue.

            private static Google\Protobuf\Internal\Message::parseFieldFromStreamNoTag( $input, $field, $value)
             
            • ignore
            © 2020 Bruce Wells
            Search Namespaces \ Classes
            ConfigurationNumbers (0-9.) only