Class: PG::TextEncoder::QuotedLiteral
| Relationships & Source Files | |
| Super Chains via Extension / Inclusion / Inheritance | |
| Class Chain: | |
| Instance Chain: | |
| Inherits: | PG::CompositeEncoder 
 | 
| Defined in: | ext/pg_text_encoder.c | 
Overview
This is the encoder class for PostgreSQL literals.
A literal is quoted and escaped by the ' character, so that it can be inserted into SQL queries. It works equal to Connection#escape_literal, but integrates into the type cast system of ruby-pg.
Both expressions have the same result:
conn.escape_literal(PG::TextEncoder::Array.new.encode(["v1","v2"])) # => "'{v1,v2}'"
PG::TextEncoder::QuotedLiteral.new(elements_type: PG::TextEncoder::Array.new).encode(["v1","v2"]) # => "'{v1,v2}'"While escape_literal requires a intermediate ruby string allocation, QuotedLiteral encodes the values directly to the result string.
Constant Summary
::PG::Coder - Inherited
  FORMAT_ERROR_MASK, FORMAT_ERROR_TO_PARTIAL, FORMAT_ERROR_TO_RAISE, FORMAT_ERROR_TO_STRING, TIMESTAMP_APP_LOCAL, TIMESTAMP_APP_UTC, TIMESTAMP_DB_LOCAL, TIMESTAMP_DB_UTC
Class Method Summary
::PG::Coder - Inherited
| .new | Create a new coder object based on the attribute Hash. | 
Instance Attribute Summary
::PG::CompositeCoder - Inherited
| #delimiter | The character that separates values within the composite type. | 
| #delimiter= | Specifies the character that separates values within the composite type. | 
| #dimensions | Get number of enforced array dimensions or  | 
| #dimensions= | Set number of array dimensions to be encoded. | 
| #elements_type, | |
| #needs_quotation= | Specifies whether the assigned  | 
| #needs_quotation? | Specifies whether the assigned  | 
::PG::Coder - Inherited
| #flags | Get current bitwise OR-ed coder flags. | 
| #flags= | Set coder specific bitwise OR-ed flags. | 
| #format | The format code that is sent alongside with an encoded query parameter value. | 
| #format= | Specifies the format code that is sent alongside with an encoded query parameter value. | 
| #name | Name of the coder or the corresponding data type. | 
| #oid | The type OID that is sent alongside with an encoded query parameter value. | 
| #oid= | Specifies the type OID that is sent alongside with an encoded query parameter value. | 
Instance Method Summary
::PG::CompositeCoder - Inherited
| #elements_type= | Specifies the  | 
| #inspect, #to_h | |
::PG::Coder - Inherited
| #==, #dup, #inspect, #inspect_short, #marshal_dump, #marshal_load, | |
| #to_h | Returns coder attributes as Hash. | 
Constructor Details
This class inherits a constructor from PG::Coder